在 Django 模型中使用 TimeField 时,我希望能够在 View 中执行查询,分别使用 TimeField 的小时和分钟元素。
但是,当我这样做时,如果我运行 View ,我会收到一条错误消息,指出 __hour
(或 __minute
)不存在(参见下面的代码):
scheduleItems = DEVICESCHEDULE.objects.filter(time__hour = nowHour)
如果我更改模型以使用 DateTimeField
而不是 TimeField
,我可以使用 __hour
和 __minute
选项。
我更愿意将字段类型保留为 TimeField
,因为我只需要输入时间,而输入日期(即使它被忽略)会让用户感到困惑。
提前致谢!
最佳答案
似乎与日期/时间相关的查找仅适用于日期和日期时间,不适用于时间字段,尽管看起来这也是一个不错的功能。
您是否考虑过加票?
也许你可以考虑将其作为替代品:
DEVICESCHEDULE.objects.extra(where=['SUBSTR(time, 1, 2)=%0.2d'], params=[nowHour])
DEVICESCHEDULE.objects.extra(where=['SUBSTR(time, 4, 2)=%0.2d'], params=[nowMinute])
关于python - Django 模型 TimeField views.py 无法选择小时或分钟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20819946/