def editor(request):
form = SessionForm(initial={
'end_time': datetime.datetime.now(),
})
if request.method == 'POST':
form = SessionForm(request.POST)
if form.is_valid():
form.save()
return render_to_response('planner/editor.html',
{'form': form}, context_instance=RequestContext(request),)
此视图显示表单并在出错时重新显示,因此有两种情况:
在模板中,我正在尝试使用日期过滤器
显示字段end_time
<div>End value: {{ form.end_time.value }}</div>
<div>End value filtered: {{ form.end_time.value|date:"Y-m-d" }}</div>
案例1(初始化)
结束值:2012-04-23 12:30:00
已过滤的最终价值:2012-04-23
案例2(出错时)
结束值:2012-04-23 12:30:00
已过滤的最终值:
现在让我们尝试删除.value
end_time
<div>End value: {{ form.end_time.value }}</div>
<div>End value filtered: {{ form.end_time|date:"Y-m-d" }}</div>
案例1(初始化)
结束值:2012-04-23 12:30:00
已过滤的最终值:
案例2(出错时)
结束值:2012-04-23 12:30:00
已过滤的最终价值:2012-04-23
正如你所看到的那样反过来 怎么解释这个?
答案 0 :(得分:3)
使用
{{ form.instance.end_time|date:"Y-m-d" }}
而不是
{{ form.end_time|date:"Y-m-d" }}
似乎在两种情况下都有效