2013-03-23 56 views
6

我在我的Django應用程序中使用了內聯管理員。我希望在管理員表單中顯示一些幫助文本,以便與內聯管理員一起使用(不僅僅是該模型中每個字段的單個幫助文本)。我一直在想如何做到這一點,但似乎無法找到任何問題。我是否錯過了這樣做的一些微不足道的選擇?Django Inline Admin中的模型「幫助」文本

如果沒有超級簡單的方法來做到這一點,有沒有辦法通過擴展一些模板來做到這一點?

下面是我的模特和他們的管理員部分:

class Page(models.Model): 
    .... 

class File(models.Model): 
    page = models.ForeignKey(Page) 
    .... 

class FileAdminInline(admin.TabularInline): 
    model = File 
    extra = 0 

class PageAdmin(admin.ModelAdmin): 
    inlines = (FileAdminInline,) 
+0

[將模型範圍的幫助文本添加到django模型的管理窗體]可能的副本(http://stackoverflow.com/questions/3728617/adding-model-wide-help-text-to-a-django-models -admin形式) – 2016-09-06 11:53:07

回答

2

如果你不談論具體help_text屬性,然後再看看這個post它顯示了實現這個的未公開的方式。

0

如果您不希望混淆將help_text信息放入formset的上下文並修改edit_inline模板,則有一種方法可以爲此目的捕獲模型的meta屬性。

基本思想:如果你將該字符串標記爲安全的,你可以插入任何你想到的html元素。例如,圖像元素的標題設置爲全局模型幫助文本。這可能看起來somethink這樣的:

class Meta: 
    verbose_name = "Ygritte" 
    verbose_name_plural = mark_safe('Ygrittes <img src="' + settings.STATIC_URL + \ 
            'admin/img/icon-unknown.svg" class="help help-tooltip" ' 
            'width="15" height="15" ' 
            'title="You know nothing, Jon Snow"/>') 

當然 - 這是一種哈克 - 但這個工程很簡單,如果你的模型作爲內嵌模型只訪問,你不需要爲複數冗長的名字其他的東西(例如在應用程序管理概述中的模型列表中)。