Surviving django.contrib.staticfilesからの抜粋(または、django で静的ファイルを管理する方法) :
静的ファイルをオーバーライドする方法
をオーバーライドしたいと想像してください/static_url/admin/css/base.css
。あなたがしなければならない最初のことは、その場所を見つけることです:
>>> ./manage.py findstatic admin/css/base.css
Found 'admin/css/base.css' here:
/home/jpic/env/lib/python2.7/site-packages/django/contrib/admin/static/admin/css/base.css
/srv/project/static_dir/
次に、追加したにコピーしますsettings.STATICFILES_DIRS
(前の段落を参照)。たとえば、次のようになります。
mkdir -p /srv/project/static_dir/admin/css/
cp /home/jpic/env/lib/python2.7/site-packages/django/contrib/admin/static/admin/css/base.css /srv/project/static_dir/admin/css
コピーは にあります
/srv/project/static_dir/admin/css/base.css
。のデフォルトの順序により、
collectstatic
は
/srv/project/static_dir/
よりも優先され
ます。django/contrib/admin/static
settings.STATICFILES_FINDERS
したがって、元の代わりにオーバーライドのコピーになりcollectstatic
ます
/srv/project/static_url/admin/css/base.css
/srv/project/static_dir/admin/css/base.css
django/contrib/admin/static/admin/css/base.css
どこ:
/static_url/
はSTATIC_URL
/srv/project/static_root/
はSTATIC_ROOT
/srv/project/static_dir/
にリストされているディレクトリですSTATICFILES_DIRS
また、デプロイ時に collectstatic を実行する必要があります。
はい、この記事を書いたのは、完全なドキュメントではなく、最も一般的なユースケースのみをカバーする短い記事を読みたいという多くの人に役立つと思うからです。締め切り。
お役に立てれば。