单选按钮django形式的初始值

时间:2012-03-06 06:20:51

标签: python django django-templates

如何声明单选按钮的初始值?

form.py

YESNO = (
    ('Yes','Yes'),
    ('No', 'No'),
)
class MyForm(forms.Form):
   like = forms.ChoiceField(widget=forms.RadioSelect, choices=YESNO)

myhtml.html

{{form.like}}

我试着说:

like = forms.ChoiceField(widget=forms.RadioSelect, choices=YESNO, initial={'Yes':'Yes'})

当我运行我的代码时,我的单选按钮尚未选中..

4 个答案:

答案 0 :(得分:4)

我将初始值直接放在我的views.py ...

def myviews(request):
  .....
  form = MyForm({'like':'Yes'})
  ...

答案 1 :(得分:2)

您可以查看文档forms field initial

答案 2 :(得分:2)

是的,这应该在视图中完成,但接受的答案中的语法不正确,因为它会在提交表单之前触发所有字段的字段验证。改为使用:

def myviews(request):
  .....
  form = MyForm(initial={'like':'Yes'})
  ...

答案 3 :(得分:1)

这是它的工作方式initial='N',它是元组中的第一项。 Choices=(('Y','Yes'), ('N','No') rs_field = forms.ChoiceField(choices=Choices),initial='N', widget=forms.RadioSelect)