2

我有一些课程

class person
class organization
class relation
    person = ForeignKey(person)
    organization = ForeignKey(organization)
    what = ForeignKey(...)

我想为一个有表单集的人设置一些关系:

InlineFormset = inlineformset_factory(person, relation, form=Form)
Formset = InlineFormset(initial=[...])

要将表单添加到模板中的表单集,我使用 Formset.empty_form 生成新表单。Formset.forms[0].fields['organization'] 的默认查询集是 Organization.objects.all()

此人不得查看所有组织,因此我想更改 empty_form 的查询集。

我可以为 initial=[...] 制作的所有表单轻松更改此查询集,但是当我尝试更改 Formset.empty_form.fields['organization'].queryset 时,它将不起作用。Django 丢弃 empty_form 的所有更改。

我也尝试以表单集使用的表单更改查询集,但它也无济于事。

如何为 empty_form 设置查询集?谢谢!

4

0 回答 0