【发布时间】:2009-11-26 14:30:06
【问题描述】:
创建一个应用程序来跟踪应计时间。用户有日子,日子有“假期”或“生病”之类的类型
型号:
日类型
- 姓名
用户日
- 日期
- DayType(转为 DayType)
- 值(+ 表示应计,- 表示使用天数)
- 注意
- 总计
我正在尝试生成以下结果集,以跨列扩展日类型。这在 ORM 中是否可行,还是我必须在代码中构建它?
【问题讨论】:
标签: django django-models django-orm
创建一个应用程序来跟踪应计时间。用户有日子,日子有“假期”或“生病”之类的类型
型号:
日类型
用户日
我正在尝试生成以下结果集,以跨列扩展日类型。这在 ORM 中是否可行,还是我必须在代码中构建它?
【问题讨论】:
标签: django django-models django-orm
我认为不将 DayType 放在另一个模型中会更轻松。你走这条路有什么特别的原因吗?
如果没有,你应该在 Django 的fields 的choices 属性处take a look。您的代码将如下所示:
class UserDay(models.Model):
DAY_TYPES = (
('vac', 'Vacation'),
('ill', 'Sick'),
)
day_type = models.CharField(max_length=3, choices=DAY_TYPES)
# Other fields here...
这似乎是一个更清洁的解决方案,因为他们拥有的日子类型不太可能经常改变。此外,您可以通过这种方式存储值来避免数据库表和 FK 查找。
【讨论】: