我已经阅读了一些关于建模的谷歌文档(顺便说一句,我是 python 和 GAE/webapp2 的新手)。用关系来做这件事会容易得多,但我正在尝试使用数据存储和/或 ndb 学习谷歌应用程序引擎。
尝试做:我有一个有几个区域的家,每个区域都有一组传感器(光、湿度、tmp),它们读取读数然后将它们发送到服务器。
像这样的东西:
Class User(db.Model):
user = db.UserProperty()
usertype = db.StringProperty()(aka mom/father/child)
class Home(db.Model):
zone = db.IntegerProperty() #Zones in home unique int
zonename = db.StringProperty() # optional name for the zone
class Zone(db. Model):
sensortype = db. key or name? # I'd like to model moisture/tmp/light sensors that will be hereSensors in zone (from class sensors ?)
SensorID = #Ideally a key for that sensor in the zone ?
DateCreated = db.DateProperty()
class Sensors(db.Model): # this will get the actual readings when they come in
Sensortype (moisture, tmp, light)
timeReading = db.DateProperty()
Reading = db.FloatProperty()
稍后我将要读取所有温度读数(来自所有区域或单个区域)、许多传感器或单个传感器。能够按日期/时间排序。我还将这些读数与天气报告进行比较。
我无法确定是否应该使用结构化对象、带有 parents/ancestors 的键或 ReferenceProperty。
从哪儿开始?我不知道最好的模型。
提前感谢所有帮助。