我有一个内联表单集,我正在使用自定义表单。这个表单有我想调用的各种函数。但是,给定一个formset实例,我如何访问它(那些?)表格?你知道吗
下面是一些伪代码:
class MyModel(models.Model):
myField = models.ForeignKey(MyOtherModel)
class MyOtherModel(models.Model):
myField = models.CharField()
class MyModelForm(forms.ModelForm):
class Meta:
model = MyModel
class MyOtherModelForm(forms.ModelForm):
class Meta:
model = MyOtherModel
def foo(self):
print "foo"
MyFormSet = inlineformset_factory(MyModel,MyOtherModel,formset=MyOtherForm)
def MyView(request):
myModel = MyModel()
myForm = MyModelForm(instance=myModel)
myFormSet = MyFormSet(intance=myModel)
# THIS FAILS...
myFormSet.foo()
# SO DOES THIS...
myFormSet.forms[0].foo()
# SO DOES THIS...
myFormSet.form.foo()
# ANY IDEAS?
return render_to_response('my_view.html', {"form" : myForm, "formset" : myFormSet },context_instance=RequestContext(request))
您可以通过
formset.forms
访问表单集的表单。你知道吗如果
myFormSet.forms[0].foo()
失败,那么这可能意味着formset没有任何形式。你还没有告诉我们它以什么方式失败-IndexError
?你知道吗如果在
inlineformset_factory
中定义formset
,是否确保它继承自BaseModelFormSet
?你知道吗相关问题 更多 >
编程相关推荐