フォームにインライン フォームセットを追加しようとしています。エラーを再現するための最小限のコードは次のとおりです。
models.py
class Festival(Model):
desc = TextField(max_length=1000)
class FestivalAddress(Model):
festival = ForeignKey(Festival, related_name="addresses")
name = CharField(max_length="50")
urls.py
urlpatterns = patterns('',
url('^add/$', FestivalCreateView.as_view(), name='festival_add'),
)
ビュー.py
class FestivalCreateView(CreateView):
model = Festival
form_class = FestivalForm
#Add FestivalAddressFormset to context here
フォーム.py
class FestivalAddressForm(ModelForm):
class Meta:
model = FestivalAddress
class FestivalForm(ModelForm):
class Meta:
model = Festival
FestivalAddressFormSet = inlineformset_factory(FestivalForm, FestivalAddress, form=FestivalAddressForm, extra=2)
これにより、AttributeError: 'ModelFormOptions' オブジェクトに属性 'get_parent_list' がありません。SO でここに示されている解決策に従っているので、私は少し困惑しています。
編集: フォームセットの有無にかかわらずエラーが発生するため、FestivalCreateView のフォームセットの使用を削除しました。