使用extra_views而不是admin的嵌套内联表单集

时间:2016-06-18 09:22:51

标签: django python-2.7 django-forms django-class-based-views inline-formset

我正在努力实现一项功能,使用nested_inline支持管理表单。

为了使用类似的公共内容(非管理员和使用基于自定义类的视图呈现的表单)表单,我使用的是extra_views,它支持内联,但只支持一个深度级别。

以下是用例。

class Project(models.Model):
    name = models.CharField()

class ProjectDetails(models.Model):
    description = models.CharField()
    project = models.ForeignKey(Project)


class ProjectAddress(models.Model):
    address = models.textField()
    project_detail = models.ForeignKey(ProjectDetails)

项目可以有多个项目详细信息,每个项目详细信息都有一个地址。

因此,当“模型项目”表单呈现时,它应采用以下格式。

ProjectForm

  ProjectDetailsForm

        ProjectAddressForm

使用nested_inline.admin's NestedStackedInline&管理员可以在管理员中实现这一目标。 NestedModelAdmin

有没有办法在使用CreateWithInlinesView或其他任何类似的基于类的视图(CreateWithInlinesViewextra_views)中实现相同的效果?

请仅以模型为例。

我经历了很多链接,但是它们似乎都没有像nested_inline为admin表单那样提供本地方式。并且,当尝试了一些解决方法(使用inlineformset_factory)时,ProjectDetailsForm没有呈现,只有ProjectAddressForm是。

对上述问题的任何帮助或指导都会非常感激。

0 个答案:

没有答案