Djangoformtools为modelforms加载初始值

2024-05-28 18:48:15 发布

您现在位置:Python中文网/ 问答频道 /正文

我尝试在SessionWizardView中加载ModelFormSet的初始值,尝试在没有SessionWizardView的情况下加载ModelFormSet的初始值,所有操作都正常,但使用它时出现以下错误:

KeyError at /en/agreement/4/edit/ 0

这是我的密码

class AgreementView(SessionWizardView):

    formset = modelformset_factory(model=Agreement, form=CreateAgreementsFormSet)
    form_list = [formset]
    template_name = 'app_name/template.html'

    def get_form_initial(self, step):

        initial = self.initial_dict.get(step, {})
        if step == '0':
            initial.update([{'agreement': '4', 'description': '2'},
                            {'agreement': '4', 'description': '2'},
                            {'agreement': '4', 'description': '2'}])

        return self.initial_dict.get(step, initial)

Tags: nameselfformgetstep错误agreement情况
1条回答
网友
1楼 · 发布于 2024-05-28 18:48:15

字典需要关键字和值。以下是你做错的地方:

  initial.update([{'agreement': '4'},
                        {'agreement': '4'},
                        {'agreement': '4'}])

您忘了在'agreement''4'之间添加一列

相关问题 更多 >

    热门问题