我试图按天对产品进行分组,但是date_created是一个datetime字段.

Product.objects.values('date_created') \
               .annotate(available=Count('available_quantity'))

退货:

[
    {'date_created': datetime.datetime(2012, 4, 14, 13, 3, 6), 'available': 1},
    {'date_created': datetime.datetime(2012, 4, 14, 17, 12, 9), 'available': 1},
    ...
]

我想要:

[
    {'date_created': datetime.datetime(2012, 4, 14), 'available': 2}, ...
]

edit:数据库后端MySQL

推荐答案

this question的启发,在MySQL上试试这个

from django.db.models import Count

Product.objects.extra(select={'day': 'date( date_created )'}).values('day') \
               .annotate(available=Count('date_created'))

Django相关问答推荐

Django prefetch_related 与 3 个不直接相关的模型

Django Inline Tabular admin:删除一个不工作的对象

Django 模型:如何查找自动生成的字段列表

AttributeError:模块rest_framework.serializers在 Swagger 中的 Django 中没有属性NullBooleanField

为什么在 Docker 映像中运行我的 Django 应用程序后下载属性不再起作用?

在 python 视图中检测移动浏览器

如何让两个模型相互引用 Django

Django基于类的视图上的success_url的反向抱怨循环导入

在 Django 中提供大文件(高负载)

Django App 配置不当 - 应用程序模块有多个文件系统位置

Apache + mod_wsgi 与 nginx + gunicorn

ImportError:无法导入设置

重命名 django 元素的简单方法

AngularJS + Django Rest Framework + CORS(CSRF Coo​​kie 没有出现在客户端)

如何在 Django 和 django-jsonfield 中将 JSONField 的默认值设置为空列表?

django Datefield 到 Unix 时间戳

如何在 django 元素中开始做 TDD?

如何仅在某些情况下禁用 Django 的 csrf 保护?

ProgrammingError: 安装 Psycopg2 后,关系django_session不存在错误

Django 应用程序运行良好,但收到 TEMPLATE_* 警告消息