一个简单的表单,其中ModelChoiceField显示为单选按钮(继承的小部件)。
每次用户选择单选按钮时,我都会使用onchange事件进行POST:
shipping_choice = ShippingChoiceField(
queryset=ShippingMethods.objects.all(),
empty_label=None,
widget=forms.RadioSelect(attrs={
'class': 'order',
'onchange': '$("#shipping_choice").submit()',
})
)
我需要让用户选择的收音机在页面重新加载时实际被“选中”。
添加一个额外的attr'selected',不会这样做,因为当用户实际先做出选择时需要它。
答案 0 :(得分:2)
表单具有initial
属性,您可以使用:
form = YourForm(initial={'shipping_choice': current_choice})
然后,我猜你正在使用ModelForm
,在这种情况下你应该只是传递实例:
form = YourForm(instance=order) # where "order" is your instance...
或者您可能只是不明白表单可以绑定到数据:
if request.method == 'POST':
order_form = YourForm(data=request.POST)
else:
order_form = YourForm()
答案 1 :(得分:0)
遗憾的是,您的问题及后续评论并不清楚。在表单重新提交时显示它是什么意思?
通常,流程显示表单,提交,如果有任何错误则重新显示,然后进入确认页面。你有什么问题?或者你的流程与此有显着差异?