From feebdc2e14426921a585c31c5279886bca3e2eca Mon Sep 17 00:00:00 2001 From: yvesf Date: Wed, 9 Jun 2010 11:14:18 +0000 Subject: foo git-svn-id: http://10.2.2.13/svn/common/ebus@1676 d0e8fea9-7529-0410-93fb-d39fd5b9c1dd --- ebus/web/model.py | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 ebus/web/model.py (limited to 'ebus/web/model.py') diff --git a/ebus/web/model.py b/ebus/web/model.py new file mode 100644 index 0000000..b8405dc --- /dev/null +++ b/ebus/web/model.py @@ -0,0 +1,41 @@ +from datetime import datetime +from sqlalchemy import Column, Integer, Float, DateTime, String, ForeignKey +from sqlalchemy.orm import relationship, backref +from sqlalchemy.ext.declarative import declarative_base + +Base = declarative_base() + +class Sensor(Base): + __tablename__ = 'sensor' + + id = Column(Integer, primary_key=True) + name = Column(String) + description = Column(String, default="") + + def __init__(self, name, description=""): + self.name = name + self.description = description + + def __repr__(self): + return "" % (self.id, self.name, self.description) + + + + +class Value(Base): + __tablename__ = 'value' + + id = Column(Integer, primary_key=True) + timestamp = Column(DateTime) + sensor_id = Column(Integer, ForeignKey("sensor.id")) + sensor = relationship(Sensor, backref=backref('values', order_by=timestamp)) + value = Column(Float(precision=4)) + + def __init__(self, sensor, value, timestamp=datetime.now()): + self.sensor = sensor + self.value = value + self.timestamp = timestamp + + def __repr__(self): + return "" % (self.id, self.sensor, self.value, self.timestamp) + -- cgit v1.2.1