Django 试图实现嵌套表单集时出现的管理错误和初始化错误
我正在尝试使用添加嵌套的内联线 使用Django 1.4的这些自定义设置: 及 但是,根据form.nested代码的不同,我会得到不同的错误 要么:Django 试图实现嵌套表单集时出现的管理错误和初始化错误,django,Django,我正在尝试使用添加嵌套的内联线 使用Django 1.4的这些自定义设置: 及 但是,根据form.nested代码的不同,我会得到不同的错误 要么: [u'ManagementForm data is missing or has been tampered with'] 或 下面是解释这一切的代码: **forms.py** 产生这个错误 __init__() got an unexpected keyword argument 'instance' form.nested = [
[u'ManagementForm data is missing or has been tampered with']
或
下面是解释这一切的代码:
**forms.py**
产生这个错误
__init__() got an unexpected keyword argument 'instance'
form.nested = [
IndicatorValueFormSet(
data=self.data or None,
instance=instance,
prefix = 'indicator_%s' % pk_value)]
IndicatorValueFormSet = modelformset_factory(IndicatorValue, extra=0)
IndicatorFormSet = inlineformset_factory(Disease, Indicator, formset=BaseIndicatorFormSet, extra=1)
下面的代码产生此错误:
[u'ManagementForm data is missing or has been tampered with']
form.nested = [
IndicatorValueFormSet(
queryset = IndicatorValue.objects.filter(relevantindicator = pk_value),
prefix = 'value_%s' % pk_value)]
IndicatorValueFormSet = modelformset_factory(IndicatorValue, extra=0)
IndicatorFormSet = inlineformset_factory(Disease, Indicator, formset=BaseIndicatorFormSet, extra=1)
型号.py
class Disease(models.Model):
disease = models.CharField(max_length=300, verbose_name="disease")
class Indicator(models.Model):
relevantdisease = models.ForeignKey(Disease, verbose_name="disease")
indicator = models.CharField(max_length=300, verbose_name="indicator")
class IndicatorValue(models.Model):
relevantindicator = models.ForeignKey(Indicator, verbose_name="indicators")
indicator_value = models.CharField(max_length=50, verbose_name="indicator Values")
更新
HTML
{{disease.management_form}}
{{ indicators.management_form }}
{% for relevantindicator in indicators.forms %}
{{ relevantindicator }}
{% if relevantindicator.nested %}
{% for formset in relevantindicator.nested %}
{{ formset.as_table }}
{% endfor %}
{% endif %}
{%endfor%}这是因为,Django向表单中添加了与管理表单集相关的数据。您需要包含它,因为您正在手动呈现表单 见:
PS:一个简单的Google或Stack Overflow搜索就会得到你的答案。我不确定错误来自哪里。我相信我的表单集已经按照你链接到我的资源在HTML中了。我已经更新了原始问题,添加了我的视图和HTML的片段。
{{disease.management_form}}
{{ indicators.management_form }}
{% for relevantindicator in indicators.forms %}
{{ relevantindicator }}
{% if relevantindicator.nested %}
{% for formset in relevantindicator.nested %}
{{ formset.as_table }}
{% endfor %}
{% endif %}