我有一个choiceField
为了创建一个带有一些选项的选择字段。像这样的东西:
forms.py
class NewForm(forms.Form):
title = forms.CharField(max_length=69)
parent = forms.ChoiceField(choices = CHOICE)
但我希望能够在没有预定义元组的情况下创建选项(这是 所需的ChoiceField
)。基本上,我需要访问 request.user 以根据每个用户填写一些选项标签,但我不知道是否有任何方法可以在 forms.Form 类中使用 request。
另一种方法是预填充NewForm
via 的实例:
views.py
form = NewForm(initial={'choices': my_actual_choices})
但我必须添加一个虚拟 CHOICE 来创建 NewForm 并且 my_actual_choices 似乎无论如何都不起作用。
我认为解决此问题的第三种方法是创建 ChoiceField 的子类并重新定义save()
,但我不确定如何去做。