在Django中按月分组查询集

时间:2014-08-30 16:21:07

标签: django django-models django-views django-queryset

我使用以下代码

将查询集按月分组
Model.objects.extra(select={'month': connection.ops.date_trunc_sql('month', 'date')}).values('month')

它工作正常,但当表格包含字段dateNone的对象时,会生成OperationalError消息user-defined function raised exception

这个错误处理不应该在django方法date_trunc_sql()中吗?

1 个答案:

答案 0 :(得分:0)

尝试从查询集中排除日期=无的模型实例。

Model.objects.exclude(date__isnull=True).extra(select={'month': connection.ops.date_trunc_sql('month', 'date')}).values('month')

无法在date_trunc_sql()方法中捕获错误 - 在评估查询集之前,该方法称为返回字符串。