2016-01-06 20 views
2

當我使用下面的如何在12個小時的時間顯示Django的時間,而不是軍事24

created = models.DateTimeField('date published') 

它顯示的時間是這樣

23:12:06 

代替

11:12:06 

我希望它在12小時內顯示時間而不是24.同時,當我按下現在的小部件時,時間是4分鐘。任何幫助將appreciatecd

+0

當你說顯示,你在談論管理界面?你自己的模板?看看django設置配置:https://docs.djangoproject.com/en/1。9/ref/settings /#datetime-format –

+0

@管理員界面中的上海 – losee

回答

0

可以更改輸入格式時間字段如下:

created = TimeField(widget=TimeInput(format='%I:%M:%S')) 

created = TimeField(input_formats=('%I:%M:%S')) 

將%I表示12小時時鐘格式,而%H表示24小時制格式。

Django中我們有一些定義的格式

時間

'%H:%M:%S',  # '14:30:59' 
'%H:%M:%S.%f', # '14:30:59.000200' 
'%H:%M',  # '14:30' 

日期

'%Y-%m-%d', '%m/%d/%Y', '%m/%d/%y', # '2006-10-25', '10/25/2006', '10/25/06' 
'%b %d %Y', '%b %d, %Y',   # 'Oct 25 2006', 'Oct 25, 2006' 
'%d %b %Y', '%d %b, %Y',   # '25 Oct 2006', '25 Oct, 2006' 
'%B %d %Y', '%B %d, %Y',   # 'October 25 2006', 'October 25, 2006' 
'%d %B %Y', '%d %B, %Y',   # '25 October 2006', '25 October, 2006' 

日期時間

'%Y-%m-%d %H:%M:%S',  # '2006-10-25 14:30:59' 
'%Y-%m-%d %H:%M:%S.%f', # '2006-10-25 14:30:59.000200' 
'%Y-%m-%d %H:%M',  # '2006-10-25 14:30' 
'%Y-%m-%d',    # '2006-10-25' 
'%m/%d/%Y %H:%M:%S',  # '10/25/2006 14:30:59' 
'%m/%d/%Y %H:%M:%S.%f', # '10/25/2006 14:30:59.000200' 
'%m/%d/%Y %H:%M',  # '10/25/2006 14:30' 
'%m/%d/%Y',    # '10/25/2006' 
'%m/%d/%y %H:%M:%S',  # '10/25/06 14:30:59' 
'%m/%d/%y %H:%M:%S.%f', # '10/25/06 14:30:59.000200' 
'%m/%d/%y %H:%M',  # '10/25/06 14:30' 
'%m/%d/%y',    # '10/25/06' 

,您可以使用這些格式來定製你的領域

也看到official doc

1

的Django有內置的日期格式,如:

created = DateTimeField(input_formats=['%Y-%m-%d %I:%M %p']) 以下是完整的備忘單關於這個字母如何工作: http://blog.tkbe.org/archive/date-filter-cheat-sheet/

因此,爲了實現12小時的格式,我們E「H」或「G」取決於如果你想有前導零或不

它也是在Django文檔中提到: https://docs.djangoproject.com/en/dev/ref/forms/fields/#datetimefield

這是開發版本,我不知道你是哪一種使用

時間的背後是

是您在設置TIME_ZONE正確的4分鐘呢?

+0

它是TIME_ZONE ='America/New_York' – losee

相關問題