如何查询django中的不同年份

时间:2013-07-02 05:31:44

标签: django

我的模型有creation_date = models.DateTimeField(auto_now_add = True)

我不知道如何在此列上查询数据库上的不同年份。

非常感谢任何想法,谢谢

2 个答案:

答案 0 :(得分:0)

当模型以{YYYY-MM-DDTHH:MM:SS'格式存储models.DateTimeField时,您可以使用过滤方法查询该年的所有特定记录。

以下是一个例子:

models.py

    from django.db import models

    class Items(models.Model):
        name = models.CharField(max_length=100)
        creation_date = models.DateTimeField(auto_now_add=True)

views.py

    from Items.model import Items

        def items_by_creationdate_view(request):
            items = Items.objects.filter(creation_date__year=2013)
            return render("template.html", {"items": items })

template.html

{% for x in items %}
    {{x.name}}<br/>
    {{x.creation_date }}<br/><br/>
{% endfor %}

答案 1 :(得分:0)

不确定这是否是最好的方法,但您可以尝试:

set([instance.creation_date.year for instance in Model.objects.all()])