0

次のコードに示すように、検証後にフォームセットを保存しようとしています。しかし、私は常にobject has no attribute 'save'エラーが発生します。誰かがFormSetViewフォームを使用してデータを保存および更新するのを手伝ってくれると助かります。

from extra_views import FormSetView
from foo.forms import MyForm

class MyFormSetView(FormSetView):
    template_name = 'myformset.html'
    form_class = MyForm
    success_url = 'success/'

    def formset_valid(self, formset):
        formset.save()
        return super(MyFormSetView, self).formset_valid(formset)
4

1 に答える 1

0

ModelFormSetViewウィジェットを使用してからオーバーライドする必要があります。

class MyForm(forms.ModelForm):
    model = customer

    def __init__(self, *args, **kwargs):
        super(MyForm, self).__init__(*args, **kwargs)
        self.fields['birthday'].widget = birthdaySelector()


class MyFormSetView(ModelFormSetView):
    template_name = 'myformset.html'
    model = customer
    success_url = 'success/'
    form_class = MyForm

定義する必要はありません。フォームセットを自動的formset_validに保存します。ModelFormSetView

于 2013-11-09T09:09:49.203 に答える