ホームページ  >  記事  >  ウェブフロントエンド  >  変更を壊さずに Django 管理スタイルをカスタマイズするにはどうすればよいですか?

変更を壊さずに Django 管理スタイルをカスタマイズするにはどうすればよいですか?

Linda Hamilton
Linda Hamiltonオリジナル
2024-11-05 10:39:02188ブラウズ

How to Customize Django Admin Styles Without Breaking Changes?

Django Admin スタイルの保持: CSS オーバーライドのガイド

Django Admin での CSS のオーバーライドは、インターフェイスの外観をカスタマイズするために一般的に必要です。ただし、Django ライブラリに直接変更を加えないようにすることが重要です。この記事では、Django Admin で CSS をオーバーライドするためのベスト プラクティスについて説明します。

オプション 1: 管理テンプレートのオーバーライド

全体的な外観と操作性を変更することが目的の場合管理インターフェイスでは、管理テンプレートをオーバーライドすることをお勧めします。元の管理ファイルを拡張することで、CSS の特定のブロックを選択的にオーバーライドできます。たとえば、Django の Base.html ファイルの extrastyle ブロックをオーバーライドして、独自のスタイルを挿入できます。

オプション 2: モデル固有の CSS オーバーライド

モデルの場合-特定の CSS カスタマイズを行うには、admin.py ファイルで Media メタ クラスを使用することが効果的な解決策です。 Media クラスを通じて CSS ファイルを特定のモデルに関連付けることにより、それらのモデルにのみ固有のスタイルを適用できます。

例:

<code class="python">class MyModelAdmin(admin.ModelAdmin):
    class Media:
        js = ('js/admin/my_own_admin.js',)    
        css = {
             'all': ('css/admin/my_own_admin.css',)
        }</code>

このシナリオでは、CSS ファイル my_own_admin.css MyModelAdmin によって管理されるモデルのインスタンスを編集または表示する場合にのみロードされます。

直接変更の回避

Django の Base.css またはを直接変更しないことを強くお勧めします。他のライブラリファイル。これらの変更は Django のアップグレード中に簡単に上書きされる可能性があるため、カスタマイズを維持することが困難になります。

上記のアプローチに従うことで、Django Admin で CSS を安全かつ効果的にオーバーライドでき、元のライブラリの整合性を維持し、カスタマイズは Django のバージョンがアップグレードされても維持されます。

以上が変更を壊さずに Django 管理スタイルをカスタマイズするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。