2013-04-30 88 views
0

我試圖從django-forms-builder作爲(通用的,如有必要)內嵌在django管理員中的表單條目。Django-form-b​​uilder管理員聯機

但是,當我這樣做時,我的表單字段沒有出現,只有日期和時間是,抽象基類中定義的唯一字段。以上是完全可以理解鑑於字段動態注入 -


UPDATEdjango-forms-builder sublcasses 摘要基類,創建FormEntry,Form,FormField模型。

基本上,我需要能夠檢索給定類型Form的實際FormEntry


更新2 - 可能相關的和有用的鏈接:

覆蓋ModelAdmin.form

或...創建custom AJAX-hackish solution


models.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 

admin.py

class FormEntryInline(generic.GenericStackedInline): 
    model = FormEntry 

我相信,由於django-forms-builder的源代碼依賴於抽象類,所以我可能不會正確地繼承子類。我是否需要定義一個查詢集?任何幫助,將不勝感激。

回答

0

在「UPDATE」文本中有問題的癥結所在 - 輸入字段完全是動態的,它們不受固定Django模型的支持,因此使用標準管理功能(如內聯等)是不可能的。

但是,爲了解決這個一般要求,管理員中的每個表單都包含一個自定義的「導出」視圖,該視圖可用於查看或導出表單條目。它甚至包含高級過濾表單,所以在某些方面它實際上比常規的Django管理功能要好。