2012-12-27 138 views
0

我有我使用來獲取所有存檔(通過)會議在Django的查詢集比較日期

get_meetings = Meeting.objects.filter(created_by = user_id.id,meeting_datetime__lte = datetime.now()) 

這裏查詢字符串模型結構

meeting_datetime = models.DateTimeField(default=datetime.datetime.now,blank=True, null=True) 

的以上查詢返回將於12月29日發生的所有會議。

我想在此之前的所有會議的細節。

請告訴我,我在做什麼錯在這裏>

+0

我不能複製你的問題。你能提供更多的代碼嗎? –

回答

2

爲了得到你應該使用less than __lt而不是「小於等於」嚴格的條件。此外,爲避免包括會議一天,你可以得到「第一分鐘的一天」:

today_min = datetime.datetime.combine(date.today(), datetime.time.min) 
get_meetings = (Meeting 
       .objects 
       .filter(created_by = user_id.id, 
         meeting_datetime__lt = today_min 
         ) 
       ) 
+0

同樣的事情我geting – masterofdestiny

+0

你能解釋爲什麼__lte似乎只比較數據字段的日期?我用datetime.now()

+0

實際上根據我計劃顯示歸檔的 – masterofdestiny

0

lte意味着less than or equal to你需要lt這意味着less than

get_meetings = Meeting.objects.filter(created_by__id = user_id.id, 
             meeting_datetime__lt=datetime.now())