11

I'm using an inline admin in my Django application. I want to have some help text displayed in the admin form for Page to go with the inline admin (not just the individual help text for each field within that model). I've been trying to figure out how to do this, but cannot seem to find anything on the issue. Am I missing some trivial out-of-the box option for doing this?

If there's no super simple way to do this, is there a way to do this by extending some template?

Below are parts of my models and their admins:

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,)
4

2 に答える 2

5

help_text特定の属性について話していない場合は、この投稿を見てください。これを達成するための文書化されていない方法が示されています。

于 2013-03-23T20:02:27.140 に答える
1

help_text 情報をフォームセットのコンテキストに取り込み、edit_inline テンプレートを変更することをいじりたくない場合は、その目的のためにモデルのverbose_name_pluralメタ属性をキャプチャする方法があります。

基本的な考え方: その文字列を安全とマークすると、頭に浮かぶ任意の html 要素を挿入できます。たとえば、タイトルがモデルのヘルプ テキストにグローバルに設定された画像要素。これは次のようになります。

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"/>')

もちろん、これは一種のハックですが、モデルがインライン モデルとしてのみアクセスされ、他のものに複数形の冗長な名前が必要ない場合 (たとえば、アプリケーションの管理画面のモデルのリストなど)、これは非常に簡単に機能します。概要)。

于 2016-10-19T16:12:09.500 に答える