Django 管理者リストビュー 列名をカスタマイズする 質問する

Django 管理者リストビュー 列名をカスタマイズする 質問する

さて、Author モデルから構築されたカスタム Django 管理者があります:

class AuthorAdmin(admin.ModelAdmin):
    """
    Author Admin
    """
    form = AuthorForm

    list_display = ['profile_photo', 'first_name', 'last_name', 'title']
    search_fields = ['first_name', 'last_name', 'title', 'credential']
    prepopulated_fields = {'slug': ('first_name', 'last_name', 'title')}

    def profile_photo(self, obj) :
        return '<img src="%s" title="%s" />' % (resize_image(obj.photo, '100x100'), obj.title)

    profile_photo.allow_tags = True

しかし、Django 管理リストビューでは、カスタム列の列タイトルの大文字小文字が適切に設定されていません。大文字と小文字は重要ですよ!

カスタム関数の名前から構築された列ヘッダーをオーバーライドする方法を知っている人はいますか?

私はもう試した:

def my_function(self, obj) :
    """My Custom Title"""
    ...

そして

def my_function(self, obj) :
    class Meta:
        verbose_name = _(u"My Custom Title")

ベストアンサー1

使用:

class AuthorAdmin(admin.ModelAdmin):
    def my_function(self, obj) :
        """My Custom Title"""
    my_function.short_description = 'This is the Column Name'

それは埋もれている管理者ドキュメント. はshort_description、具体的には、の議論の中ではほとんど言及されていませんlist_display(実際に言及されるよりも、例として挙げられることが多いです)。これと同様の他の項目も同様に管理ドキュメントに埋もれていますが、要約すると次のようになります。

  • short_description: 使用する列タイトル(文字列)
  • allow_tags: 名前の通り、HTML (TrueまたはFalse)を使用できます
  • admin_order_field: この列を並べ替えるモデル上のフィールド (文字列、フィールド名)
  • booleanTrue: 戻り値がブール値であることを示し、管理者に緑色のチェック/赤色のX(またはFalse)グラフィックを使用するように指示します。

おすすめ記事