2014-05-01 77 views
1

我想通過檢查User.date_joined並將其與datetime.datetime.now進行比較來知道用戶已經創建了多長時間。當我將datetime.datetime.now轉換爲函數,然後調用User.date_joined作爲d1和datetime.datetime.now()作爲d2時,一切看起來都很順利。我得到轉化的數據仍然是:0.364000知道用戶已經在django註冊了多長時間

def days_between(d1, d2): 
    d1 = datetime.strptime(d1, "%Y-%m-%d") 
    d2 = datetime.strptime(d2, "%Y-%m-%d") 
    return abs((d2 - d1).days) 
+0

'd1'和'd2'必須是字符串。你能看到當你看到錯誤時傳遞了什麼值嗎? – alecxe

+0

是他們are.date_difference = days_between(str(query_user.date_joined),str(datetime.datetime.now())) 返回HttpResponse(date_difference) –

回答

0

你不需要使用strptime()到日期轉換爲使用str,然後回到日期時間字符串:

date_difference = (datetime.datetime.now() - query_user.date_joined).days 

另外請注意,你不這樣做需要abs,因爲加入日期總是少於現在。

+0

仍然沒有工作。 –

+0

@ Temi'Topsy'Bello我在日期時間對象上測試過它 - 它適用於我。你有什麼錯誤嗎? – alecxe

相關問題