我想創建一個函數來提供一些數據的計數。但有兩種情形會發生:在Django模型中合併__range和__startswith
- 週刊的電子郵件數量 - 這我使用__range
- 今天的電子郵件數量 - 這我使用__startswith
我的函數看起來像此:
def count_emails(from_date=None,to_date=None):
emails = Emails.objects.all()
if to_date is None:
to_date = from_date
count = emails.filter(initial_date__range=(from_date,to_date)).count()
return count
期望值:
def count_emails(from_date=None,to_date=None):
emails = Emails.objects.all()
if to_date is None:
count = contact.filter(initial_date__stratswith=from_date).count()
else:
count = emails.filter(initial_date__range=(from_date,to_date)).count()
return count
所以對於今天的電子郵件數量,我傳遞的唯一FROM_DATE但統計顯示0(零),如果我使用的__startswith
代替__range
那麼計數將是正確的。
所以我需要把它變成一個函數和單個變量。
我該怎麼做?
這將增加1多一天,因此計數變成了兩天? –
是的,我認爲,初始數據是'auto_now_add'字段,所以今天無關緊要值多少將由'to_date'值。現在我改變我的答案,希望它能幫助你。 –
謝謝。我看到了timedelta並帶有一個解決方案。 https://stackoverflow.com/a/46069949/6695297 –