我的模型有 creation_date = models.DateTimeField(auto_now_add=True)
我不知道如何在此列的数据库中查询不同的年份。
任何想法将不胜感激,谢谢
我的模型有 creation_date = models.DateTimeField(auto_now_add=True)
我不知道如何在此列的数据库中查询不同的年份。
任何想法将不胜感激,谢谢
当模型存储时,models.DateTimeField
它通常采用“YYYY-MM-DDTHH:MM:SS”这种格式,您可以使用过滤器方法查询该年份的所有特定记录。
这是一个例子:
模型.py
from django.db import models
class Items(models.Model):
name = models.CharField(max_length=100)
creation_date = models.DateTimeField(auto_now_add=True)
视图.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 })
模板.html
{% for x in items %}
{{x.name}}<br/>
{{x.creation_date }}<br/><br/>
{% endfor %}
不确定这是否是最好的方法,但您可以尝试:
set([instance.creation_date.year for instance in Model.objects.all()])