如何使用modelformset_factory创建一个空的Django formset?

时间:2010-03-14 18:16:46

标签: django-forms

我正在创建一个formset,但它似乎用该对象的表中的所有现有数据填充它。我无法弄清楚如何从一个空白的formset开始;唯一的方法似乎是从表中删除所有数据,但显然这不是一个选项。

我会在必要时发布代码(但是有很多代码,所以知道什么是相关的是棘手的)。

3 个答案:

答案 0 :(得分:10)

在制作对象时给出参数queryset = Model.objects.none()。

答案 1 :(得分:1)

根据Arihant的回答,我做了类似的事情,这有效:

class TagCreateFormSet(BaseModelFormSet):
    def __init__(self, data=None, files=None, auto_id='id_%s', prefix=None,
             queryset=None, **kwargs):
        queryset = Tag.objects.none()
        super(TagCreateFormSet, self).__init__(data, files, 
            auto_id, prefix, queryset, **kwargs)

答案 2 :(得分:0)

似乎无法更改模型formset的行为。因此,作为解决方案,我更改了数据结构,以便我想要编辑的数据按其他类型分组,然后我使用了inlineformset_factory