Django - 将datetime字段更改为日期字段

时间:2015-01-20 22:40:02

标签: sql django date datetime

说我有这样的模特:

class Arrival(models.Model):
    client = models.ForeignKey(User, related_name='client')
    time = models.DateTimeField()

现在,我想在每个日期绘制一个包含唯一客户访问次数的图表。

我目前的做法是使用:

Arrival.objects.values('client','time')

然后将所有日期时间字段转换为日期字段。使用python库获取唯一日期列表,然后遍历客户端以查找每个日期访问的客户端数量。

有人有更有效的方法吗?

1 个答案:

答案 0 :(得分:1)

在此处重新提交答案:

Get daily counts of objects from Django

(Arrival.objects
    # get specific dates (not hours for example) and store in "created" 
    .extra({'created':"date(time)"})
    # get a values list of only "created" defined earlier
    .values('created')
    # annotate each day by Count of Arrival objects
    .annotate(created_count=Count('id')))