在Django模型中使用TimeField时,我希望能够在视图中执行查询,分别使用TimeField的小时和分钟元素。
但是,当我这样做时,如果我运行视图,则会收到__hour
(或__minute
)不存在的错误消息(请参阅下面的代码):
scheduleItems = DEVICESCHEDULE.objects.filter(time__hour = nowHour)
如果我将模型更改为使用DateTimeField
而不是TimeField
,我可以使用__hour
和__minute
选项。
我更希望将字段类型保留为TimeField
,因为我只需要输入时间并输入日期(即使被忽略)会让用户感到困惑。
提前致谢!
答案 0 :(得分:0)
似乎日期/时间相关的查找仅适用于日期和日期时间,而不是时间字段,尽管看起来它也是一个很好的功能。
您是否考虑过提票?
也许您可以将此视为替代品:
DEVICESCHEDULE.objects.extra(where=['SUBSTR(time, 1, 2)=%0.2d'], params=[nowHour])
DEVICESCHEDULE.objects.extra(where=['SUBSTR(time, 4, 2)=%0.2d'], params=[nowMinute])