我试图使用带有日期/日期时间字段的datatables jQuery插件。当您尝试在查询集中使用__contains
时,当您进行包含这些字段的查询时会生成MySQL Warning。我发现,如果您尝试对Year
,Month
和Day
进行查询,则不会显示警告。
还有另一种方法可以在日期/日期时间字段中搜索而不会发出警告,或者如何在日期/日期时间字段中查询一年/月/日。
以下是一个例子:
Model.objects.filter(Date__contains="2014")
这给出了这个警告:
Warning: Incorrect date value: '%2014%' for column 'Fecha' at row 1
我想做一个这样的查询:
SELECT * FROM Model WHERE YEAR(Date) LIKE "%4%" OR MONTH(Date) LIKE "%4%" OR DAY(Date) LIKE "%4%";
答案 0 :(得分:2)
我找到的最佳解决方案是通过正则表达式进行搜索
Model.objects.filter(Date__regex="4")
答案 1 :(得分:0)
Model.objects.filter(field_name__year=2014)