【发布时间】:2014-05-27 15:45:42
【问题描述】:
我正在尝试使用附加参数初始化 Django 表单集,以传递表单集中的表单。但是,当我使用表单集工厂初始化表单集并将变量传递给它时。 Kwargs 总是空的
forms.py
from django.forms.formsets import BaseFormSet
from django.forms.formsets import formset_factory
class BaseCIFormSet(BaseFormSet):
def __init__(self, *args, **kwargs):
print kwargs
self.grn_id = kwargs.pop('grn_id', None)
super(BaseCIFormSet, self).__init__(*args, **kwargs)
def _construct_forms(self):
self.forms = []
for i in xrange(self.total_form_count()):
self.forms.append(self._construct_form(i, grn_id=self.grn_id))
Views.py
data['form-TOTAL_FORMS'] = count
data['form-INITIAL_FORMS'] = count
data['form-MAX_NUM_FORMS'] = ''
CIFormSet = formset_factory(CIForm, formset=BaseCIFormSet, extra=(count), can_delete=True)
formset = CIFormSet(data, grn_id)
“print kwargs”总是返回并清空 dict {},并且 kwargs.pop 总是进入默认值。我是不是做错了什么?
【问题讨论】:
标签: python django formset keyword-argument