2

我已声明以下表格

form = BudgetPageInitial()

在我的view.py中,我想要将一个变量(比如“x”)传递给BudgetPageInitial(),以便我可以在表单定义中使用该变量在表单中forms.py生成“x”个输入字段BudgetPageInitial

请指导我这样做。

4

1 回答 1

3

看法

form = MiscQuestionForm(request.POST or None, misc=misc_questions)

形式

class MiscQuestionForm(BootstrapForm):

    def __init__(self, *args, **kwargs):
        misc = kwargs.pop('misc')
        super(MiscQuestionForm, self).__init__(*args, **kwargs)

        for question in misc:
            if question.answer_type == 1:  # bool
                self.fields['custom_%s' % question.pk] = forms.BooleanField(
                        label=question, required=True)
            else:  # textfield
                self.fields['custom_%s' % question.pk] = forms.CharField(
                        label=question, widget=forms.Textarea,
                        required=True)

这是您可以用来将变量传递给表单定义的设计模式,就像我使用misc.

于 2012-07-11T06:19:41.800 回答