【发布时间】:2014-07-25 19:55:43
【问题描述】:
我正在设计用于生产管理的软件。我的应用允许我的用户执行以下操作:
- 用户可以创建一个“时间表”。时间表指定需要在特定日期准备好哪些类型的蔬菜产品。
- 每种蔬菜都有不同的繁殖、移栽和收获时间。
- 我的软件逆向运行,并确定在哪个日期需要做什么等。
我在为 Schedule 设计数据结构时遇到问题。
我现在有以下内容:
class Produce(db.Model):
crop = db.StringProperty(required=True)
duration_sow = db.IntegerProperty()
duration_transplant = db.IntegerProperty()
duration_storage = db.IntegerProperty()
一个时间表在 JSON 中看起来像这样:
a_schedule = {
"crops": [ {"produce": Key(123), "quantity", 15}, {"produce": Key(234), "quantity", 16} ],
"created_by": ....
}
由于 Appengine 数据存储不支持元组,我不确定如何在模型中存储“crops”属性。
选项 1
我考虑过使用两个数组,
crops_key = [ Key(123), Key(234), .. ]
quantity = [ 15, 16, ... ]
但随后删除和修改可能会有点棘手。这行得通,但我经常遇到这种模式,我只想看看那里的专家有什么建议。
如果有什么不同,我正在使用 python。
【问题讨论】:
标签: python google-app-engine database-design schema