编辑时的 Django FormWizard 预填充

Posted

技术标签:

【中文标题】编辑时的 Django FormWizard 预填充【英文标题】:Django FormWizard prefill on edit 【发布时间】:2011-08-19 00:14:49 【问题描述】:

我正在使用 FormWizard 来编辑对象,并且我希望能够在加载编辑页面时从数据库中预填充字段。

例如,如果我的 URL 是 'category_edit_wizard/5',则在页面加载时,字段 'title' 应该具有 ID 为 5 的类别的值。

有什么办法吗?

谢谢

【问题讨论】:

【参考方案1】:

如果您使用 django-formwizard 或 Django 1.4 中引入的新 formwizard 实现,您可以使用 ModelForm 作为步骤表单并在创建 WizardView 实例时传递 instance_dict。

instance_dict 的工作方式与 initial_dict 的工作方式相同 - 请参阅 https://django-formtools.readthedocs.io/en/latest/wizard.html#formtools.wizard.views.WizardView.initial_dict

如果您使用的是 Django 1.3 及更低版本中的旧表单向导实现,则可以按此处所述传递初始值:https://django-formtools.readthedocs.io/en/latest/wizard.html#providing-initial-data-for-the-forms

【讨论】:

以上是关于编辑时的 Django FormWizard 预填充的主要内容,如果未能解决你的问题,请参考以下文章

使用 formwizard-django 创建用户后登录

带有动态表单的 Django FormWizard

django manytomany 字段使用 through 和 formwizard

Django formwizard 与表单集和表单在同一页面上

带有模板的自定义 Django FormWizard 步骤

Django:如何使用 ModelFormSet 和 FormWizard 过滤 ForeignKey 选择(例如使用 request.user)?