Python 如何从视图更改表单变量值
我一直在尝试从我的视图向以下表单发送数据 每次调用此表单时,我都需要更改变量(选项)Python 如何从视图更改表单变量值,python,django,Python,Django,我一直在尝试从我的视图向以下表单发送数据 每次调用此表单时,我都需要更改变量(选项) 班级答疑表格(forms.Form): view.py: 参加def考试(申请、考试名称、问题编号=0): 问题是:我需要表单类中的变量(CHOICES)来更改它在视图类中的值(我知道我可以只使用CHOICES=[('b','a')]),但我想从视图中更改它,因为这段代码只是为了显示问题) 还有更好的主意吗 提前感谢您可以更改覆盖表单init方法的字段选择(以便它接受一个选项参数),也可以根据需要在in
班级答疑表格(forms.Form):
view.py:
参加def考试(申请、考试名称、问题编号=0):
问题是:我需要表单类中的变量(CHOICES)来更改它在视图类中的值(我知道我可以只使用CHOICES=[('b','a')]),但我想从视图中更改它,因为这段代码只是为了显示问题)
还有更好的主意吗
提前感谢您可以更改覆盖表单init方法的字段选择(以便它接受一个选项参数),也可以根据需要在init之后更改字段的选择 第一种情况是这样的:
class AnswersForm(forms.Form):
radioButton = forms.ChoiceField(choices=CHOICES, widget=forms.RadioSelect())
def __init__(self, radio_choices= None, *args, **kwargs):
super(AnswersForm, self).__init__(self, *args, **kwargs)
if radio_choices is not None:
self.fields['radioButton'].choices = radio_choices
查看示例:
form_instance = AnswersForm(new_choices)
首先,请正确格式化您的代码。它需要像真正的Python一样缩进,这样我们才能阅读它。第二,为什么在表单类中定义了
CHOICES
?
class AnswersForm(forms.Form):
radioButton = forms.ChoiceField(choices=CHOICES, widget=forms.RadioSelect())
def __init__(self, radio_choices= None, *args, **kwargs):
super(AnswersForm, self).__init__(self, *args, **kwargs)
if radio_choices is not None:
self.fields['radioButton'].choices = radio_choices
form_instance = AnswersForm(new_choices)