我的模型有CREATION_DATE = models.DateTimeField(auto_now_add = TRUE)如何在Django查詢不同的一年
我不知道如何將我查詢此列在數據庫上不同的年。
任何想法,將不勝感激,謝謝
我的模型有CREATION_DATE = models.DateTimeField(auto_now_add = TRUE)如何在Django查詢不同的一年
我不知道如何將我查詢此列在數據庫上不同的年。
任何想法,將不勝感激,謝謝
當模型存儲models.DateTimeField
它通常以這種格式「YYYY-MM-DDTHH:MM:SS」,你可以使用過濾方法來查詢所有的當年的具體記錄。
下面是一個例子:
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 %}
不知道這是最好的方法做到這一點,但你coul d試:
你回答set([instance.creation_date.year for instance in Model.objects.all()])
您好感謝,我婉必須是讓所有不同年份例如數據庫中有50行,10 2010年創建,是2011 30和10是2013。 –
結果應該是[2010,2011,2013] –
使用'.all()'和order by creation_date 'items = Items.objects.all()。order_by(creation_date)' – AgileDeveloper