首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Django将自定义表单参数传递给Formset

Django将自定义表单参数传递给Formset
EN

Stack Overflow用户
提问于 2009-03-08 03:36:08
回答 12查看 47.7K关注 0票数 157

在带有form_kwargs的Django 1.9中,

修复了这个问题。

我有一个Django表单,看起来像这样:

class ServiceForm(forms.Form):
    option = forms.ModelChoiceField(queryset=ServiceOption.objects.none())
    rate = forms.DecimalField(widget=custom_widgets.SmallField())
    units = forms.IntegerField(min_value=1, widget=custom_widgets.SmallField())

    def __init__(self, *args, **kwargs):
        affiliate = kwargs.pop('affiliate')
        super(ServiceForm, self).__init__(*args, **kwargs)
        self.fields["option"].queryset = ServiceOption.objects.filter(affiliate=affiliate)

我用下面这样的方式调用这个表单:

form = ServiceForm(affiliate=request.affiliate)

其中request.affiliate是已登录的用户。这可以达到预期的效果。

我的问题是,我现在想把这个单一的表单变成一个表单集。我不明白的是,在创建表单集时如何将从属关系信息传递给各个表单。根据文档,要创建一个表单集,我需要这样做:

ServiceFormSet = forms.formsets.formset_factory(ServiceForm, extra=3)

然后我需要像这样创建它:

formset = ServiceFormSet()

现在,我如何以这种方式将affiliate=request.affiliate传递给各个窗体?

EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/622982

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档