2013-07-02 41 views

回答

0

當模型存儲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 %} 
+0

您好感謝,我婉必須是讓所有不同年份例如數據庫中有50行,10 2010年創建,是2011 30和10是2013。 –

+0

結果應該是[2010,2011,2013] –

+0

使用'.all()'和order by creation_date 'items = Items.objects.all()。order_by(creation_date)' – AgileDeveloper

0

不知道這是最好的方法做到這一點,但你coul d試:

你回答

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

相關問題