我在使用基於DateTimeField的過濾器來使用django queryset API引用。django queryset篩選日期時間域
我已經準備了下面的模型,在我的models.py:
class KleedkamerIndeling(models.Model):
gametimedate = models.DateTimeField(auto_now=False, auto_now_add=False) # date and time of game
hometeam = models.CharField(max_length=25, blank=True) # name of home playing team team
homedressroom = models.CharField(max_length=25, blank=True) # dressing room of home playing team
awayteam = models.CharField(max_length=25, blank=True) # name of visiting team team
awaydressroom = models.CharField(max_length=25, blank=True) # dressing room of visiting team team
pitch = models.CharField(max_length=25, blank=True) # name/number of playing pitch
referee = models.CharField(max_length=25, blank=True) # name of referee
refdressroom = models.CharField(max_length=25, blank=True) # name/number of referee dressroom
timestamp = models.DateField(auto_now_add=True, auto_now=False)
indelings_datum = models.DateField() # need to change to datum added later
def __unicode__(self):
return smart_unicode(self.hometeam)
我想基於本日訪問數據庫。應該是這樣的:
queryset = KleedkamerIndeling.objects.all().filter(gametimedate=date.today())
當我用「的DateField」,但我決定去一個DateTimeField字段,因爲我還需要比賽的開始時間播放之前這個工作。
我已經找到了網頁和計算器,發現了以下舊主題How can I filter a date of a DateTimeField in Django?,但是我在實施中遇到了一些問題。
我想創建一個查詢集,以獲取當今日期可用的所有'KleedkamerIndeling'。隨後我想檢查列表中是否有多個對象。如果是這種情況,我想根據當前時間進一步縮小範圍,也可以通過datetimefield上的過濾器進行縮小。最後,我想對對象列表進行排序,以便按時排序。
我知道我的問題必須做到這一點datetimefield麪包車的特性我欣賞一些代碼行,以幫助我前進。我一直試圖在python manage.py shell中查找正確的查詢,整個下午......
我的模型大部分工作是因爲queryset = KleedkamerIndeling.objects.all()似乎工作,我可以設置爲查詢集列表中的每個對象(稱爲'game0到game10')提供單獨的列表。
我對DateTimeField字段格式的另一個問題:
我已經定義了一個「KleedkamerIndeling」描述一個遊戲,開始時間爲13:00。我已經使用查詢集列表中的對象來定義10個不同的'遊戲'對象。即game0 = [queryset [0] .hometeam等...儘管game10(如果適用)。遊戲時間字段通過如下過濾器顯示在模板中:{{game0.0 | date:「H」}}:{{game0.0 | date:「i」}}。在沒有game0對象的情況下,我仍然以':'結尾。我打算通過模板或視圖中的if else腳本來解決這個問題,還是有更好的方法來解決這個問題?
太棒了,這似乎工作。謝謝!在python shell中嘗試使用時收到和運行時間預熱。它表示'RuntimeWarning:DateTimeFiled KleedkamerIndeling.gametimedate收到了一個天真的日期時間(2014-12-06 00:00:00),而時區支持處於活動狀態「。但除此之外,它的作品! – borreltijd 2014-12-06 19:09:04
時區可能會很棘手我建議通過一些djangos文檔閱讀https://docs.djangoproject.com/en/1.7/topics/i18n/timezones/#naive-and-aware-datetime-objects – Tim 2014-12-06 19:38:36