我想设置动态选项。
我使用了 __set_choices 方法,但是,当请求方法是 POST 时, is_valid 方法总是返回 False。
if request.method=='POST':
_form = MyForm(request.POST)
if _form.is_valid():
#something to do
最佳答案
我经常在构造函数中动态设置选项:
class MyForm(BaseForm):
afield = forms.ChoiceField(choices=INITIAL_CHOICES)
def __init__(self, *args, **kwargs):
super(MyForm, self).__init__(*args, **kwargs)
self.fields['afield'].choices = my_computed_choices
关于python - 如何使用 Django choicefield 动态设置选项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5028731/