假设我的服务器日期格式为DD-MM-YYYY
(从时区得到)如何将其更改为用户的相应日期?
它应显示与用户时区相对应的日期
答案 0 :(得分:2)
当我遇到同样的问题时,我尝试了各种不同的解决方案。
最简单的方法是在模板中添加{{ created|date:"d-M-Y G:i" }}
。尽管底座的格式如此,您仍可以根据需要对其进行格式化。那就是它只是一个显示问题。
您可以尝试在settings.py
中设置默认格式DATE_FORMAT = 'd-m-Y'
TIME_FORMAT = 'H:i'
DATETIME_FORMAT = 'd-m-Y H:i'
YEAR_MONTH_FORMAT = 'F Y'
MONTH_DAY_FORMAT = 'F j'
SHORT_DATE_FORMAT = 'd/m/Y'
SHORT_DATETIME_FORMAT = 'd/m/Y P'
FIRST_DAY_OF_WEEK = 1
# BUT here use the Python strftime format syntax,
# LIST: http://docs.python.org/library/datetime.html#strftime-strptime-behavior
DATE_INPUT_FORMATS = (
'%d-%m-%Y', # '21-03-2014'
)
TIME_INPUT_FORMATS = (
'%H:%M:%S', # '17:59:59'
'%H:%M', # '17:59'
)
DATETIME_INPUT_FORMATS = (
'%d-%m-%Y %H:%M:%S',# '21-03-2014 17:59'
'%d-%m-%Y',
)
..并使用其中一些表格。
答案 1 :(得分:1)
这可能会对您有所帮助: -
settings.py:-
settings.TIME_ZONE = 'Your Timezone'
views.py :-
from django.utils.timezone import localtime
result = localtime(some_time_object)
localtime
会在您settings.py
中设置的time_zone中转换日期对象,默认情况下会使用' America / Chicago'