[英]Django filter date before deadline
我想在 Django 截止日期前 5 天過濾日期,我已經有一個查詢但沒有工作。 我該如何解決這個問題?
Django 視圖
def bdeadline(request):
def dispatch(self, *args, **kwargs):
return super().dispatch(*args, **kwargs)
dl = books.objects.filter(deadline = datetime.now().date() +timedelta(days=5))
return render(request, 'deadline.html',{'title':'Car - Deadline', 'dl':'dl'})
您的代碼中有兩個潛在的問題。 一種是使用日期數據查詢DateTimeField
。 另一個是發送字符串dl
作為上下文。
dl = books.objects.filter(deadline = datetime.now().date() +timedelta(days=5))
# ^^^^^^^^^
return render(request, 'deadline.html',{'title':'Car - Deadline', 'dl':'dl'})
# ^^^^
所以,你可以這樣修復:
def bdeadline(request):
dl = books.objects.filter(deadline__date = datetime.now().date() + timedelta(days=5)) # consider using PascalCase when naming classes(based on pep 8)
return render(request, 'deadline.html',{'title':'Car - Deadline', 'dl':dl})
我使用__date
只獲取數據庫的日期數據。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.