在我的索引视图中,我有一个ModelChoiceField,它允许我选择各种设备。
当我提交我的选择时,我将所选值保存在这样的变量中:
if form.is_valid():
form.save()
request.session["eq"] = form.cleaned_data['equipment']
然后我被重定向到一个新视图(预约),其中我有一个包含三个字段的表单:“equipment”,“date”和“reserved_by”。由于我已经在上一个视图中选择了我想要的设备,我希望它能够自动填充。我通过在我的预订视图中执行以下操作来实现此目的:
form = ReservationForm(initial={'equipment': request.session.get('eq')})
因此,当我运行我的网站时,预订视图中的设备字段会自动填写,但现在表单突然无法验证(form.is_valid为false)。
现在已经挣扎了一段时间,所以任何帮助都会非常感激。
答案 0 :(得分:0)
您的问题中的此表单是未绑定的。
form = ReservationForm(initial={'equipment': request.session.get('eq')})
未绑定表单永远无效。要获得有效的表单,您需要将其绑定到发布或获取数据。