Django在USE_TZ=True时忽略时区
我有这个领域:Django在USE_TZ=True时忽略时区,django,timezone,Django,Timezone,我有这个领域: needed_on = SplitDateTimeField( input_date_formats=['%m/%d/%Y', ], input_time_formats=settings.TIME_INPUT_FORMATS, localize=True, label=_("At") ) 和Django设置: TIME_ZONE = 'US/Pacific' USE_TZ = True 我的模板: &
needed_on = SplitDateTimeField(
input_date_formats=['%m/%d/%Y', ],
input_time_formats=settings.TIME_INPUT_FORMATS,
localize=True,
label=_("At")
)
和Django设置:
TIME_ZONE = 'US/Pacific'
USE_TZ = True
我的模板:
<div class="field_parent">
<input type="text" placeholder="on" class="date" id="datepicker1" name="needed_on_0" value="{{ form.needed_on.value|default_if_none:''|first }}" />
</div>
<div class="field_parent">
<input type="text" placeholder="{% trans "HH:mm" %}" class="time" id="id_needed_on_1" name="needed_on_1" value="{{ form.needed_on.value|default_if_none:""|last }}" />
</div>
然而,我用UTC打印时间。
我做错了什么
谢谢
编辑{form.needed_on.value}返回'10/30/2015','09:25 AM',所以我不认为这是一个字符串。可能发生的情况是,在模板中,您收到的不是日期值,而是一个字符串。您可以通过将日期值传递给模板并检查其显示方式来检查本地化是否真正起作用。是否应该在表单端处理日期?在init?编辑了这个问题。它不是字符串,它是一个没有属性“tzinfo”的元组