想用Django開發(fā)一個個人博客,參考了網(wǎng)上的一些文章和Django文檔,目前做到日期歸檔這個功能,以下是有問題的Viewclass?ArchiveView(ListView):
???template_name?=?"blog.html"
???context_object_name?=?"articles"
???def?get_queryset(self):
???????#?接收從url傳遞的year和month參數(shù),轉為int類型
???????year?=?int(self.kwargs['year'])
???????month?=?int(self.kwargs['month'])
???????#?按照year和month過濾文章
???????article_list?=?ArticleModel.manager.filter(status='p',?add_time__year=year,?add_time__month=month).order_by('-add_time')
???????for?article?in?article_list:
???????????pdb.set_trace()
???????????article.content=?markdown2.markdown(article.content,?extras=['fenced-code-blocks'],?)
???????return?article_list
???def?get_context_data(self,?**kwargs):
???????return?super(ArchiveView,?self).get_context_data(**kwargs)用pdb試了很久,最后發(fā)現(xiàn)問題出在這一句:article_list?=?ArticleModel.manager.filter(status='p',?add_time__year=year,?add_time__month=month).order_by('-add_time')其中add_time__month=month無法過濾到正確月份,導致結果的QuerySet為空;pdb調(diào)試上面這個View中的month變量和article.add_time.month又確實是一樣的,理論上應該可以得到我想要的文章。注:status='p'和add_time__year=year都可以成功地找到符合條件的文章;也試過用Q,結果是一樣的。不知道問題描述清楚了沒有= =|||,我現(xiàn)在也沒有頭緒,就想知道從經(jīng)驗上來說,這個問題應該怎么去找解決辦法……
添加回答
舉報
0/150
提交
取消