2013-06-26 192 views
0

template.html顯示日期和時間在Django

{{incident.created_date_time}} 

這ahowing的日期和時間爲June 26, 2013, 5:42 p.m.,如何展現它June 26 2013 at 5:42 P.M.

如何使用模板過濾器轉換日期和時間。

感謝

回答

1

Django的內置模板過濾器會不會真的這樣做準確的格式爲你,但緊隨其後利用這將是

{{ incident.created_date_time|:"F j Y P" }} 

否則,你就必須創建自己的日期過濾器。

@register.filter(name='myDate') 
def myDate(value, arg): 
    #arg is optional and not needed but you could supply your own formatting if you want. 
    dateformatted = value.strftime("%b %d, %Y at %I:%M %p") 
    return dateformatted 

這需要incident.created_date_time是一個datetime對象。

,然後你通過設置DATE_FORMAT或DATETIME_FORMAT您settings.py使用它像

{{ incident.created_date_time|myDate }} 
+0

我應該在視圖中還是在templatetage.py – user2086641

+0

中寫入此過濾器,並將其存儲在其他自定義模板標記或過濾器的相同文件中:https://docs.djangoproject.com/en/dev/howto/ custom-template-tags /#code-layout –

+0

我在templatetages.py中複製了過濾器代碼,它給出了這個錯誤「Invalid filter:'myDate'」 – user2086641

2

試試這個:

{{ incident|date:"F d Y P" }} 

https://docs.djangoproject.com/en/dev/ref/templates/builtins/#date

編輯: 沒有,如果你想擁有的日期,你需要編寫自己的日期過濾器。

看看limelights後。

+0

收到此錯誤「無效的過濾器:‘數據’」 – user2086641

+0

Sry基因我的錯應該有「日期」不是數據 – Silwest

+0

我嘗試的日期和時間,我需要的地方「在」之間的你的代碼是可能在這裏做 – user2086641