0

我正在尝试将表单条目django-forms-builder作为(通用,如果需要)内联包含在 django 管理员中。

但是,当我这样做时,我的表单字段没有显示,只有日期和时间是抽象基类中定义的唯一字段。


更新- 鉴于这些字段是动态注入的,上述内容是完全可以理解的。django-forms-builder子类化抽象基类,创建FormEntry, Form,FormField模型。

本质上,我需要能够检索FormEntry给定类型的Form.


更新 2 - 可能相关且有用的链接:

覆盖ModelAdmin.form

或者...创建一个自定义的 AJAX-hackish 解决方案


模型.py

from forms_builder.forms import models as fmodels   

class FormEntry(fmodels.<s>Abstract</s>FormEntry):
    content_type = models.ForeignKey(ContentType)
    object_id = models.PositiveIntegerField()
    content_object = generic.GenericForeignKey('content_type', 'object_id') 
    pass

管理员.py

class FormEntryInline(generic.GenericStackedInline):
    model = FormEntry 

我相信,由于源django-forms-builder依赖于抽象类,我可能没有正确地进行子类化。我需要定义一个查询集吗?任何帮助,将不胜感激。

4

1 回答 1

0

您的“更新”文本中有问题的症结所在 - 输入字段是完全动态的,并且它们不受固定 Django 模型的支持,因此无法使用内联等标准管理功能。

然而,为了满足这一一般要求,管理中的每个表单都包含一个自定义“导出”视图,可用于查看或导出表单条目。它甚至包含一个高级过滤表单,因此在某些方面它实际上比常规的 Django 管理功能更好。

于 2013-05-01T00:15:54.747 回答