24

django 1.5以降、https://docs.djangoproject.com/en/1.5/releases/1.5/#miscellaneous

非推奨のテンプレートタグ{%admin_media_prefix%}のみを含むテンプレートタグライブラリadminmediaが削除されました。{%load adminmedia%}でロードしようとすると失敗します。テンプレートにまだその行が含まれている場合は、それを削除する必要があります。

それで、レガシーライブラリと私のレガシープロジェクトで見つかったコードを置き換える{% load adminmedia %}適切な方法は何ですか?それでもcssを使用してロードします:-

<link rel="stylesheet" type="text/css" href="{% load adminmedia %}{% admin_media_prefix %}css/login.css">

4

2 に答える 2

24

Django 1.3以降、django.contrib.staticfilesアプリを使用できます。

django.contrib.staticfilesがINSTALLED_APPSに含まれており、STATIC_ROOTおよびSTATIC_URLオプションがsettings.pyで指定されていることを確認してください。

次に、manage.py collectstaticコマンドを実行すると、すべてのアプリケーションの静的ファイルがSTATIC_ROOTフォルダーに収集されます。

テンプレートでは、{{ STATIC_URL }}コンテキスト変数(django.core.context_processors.staticがTEMPLATE_CONTEXT_PROCESSORSに含まれていることを確認してください)または{% static %}テンプレートタグを使用できます。

<link href="{{ STATIC_URL }}admin/css/login.css" rel="stylesheet">

また

{% load staticfiles %}
<link href="{% static 'admin/css/login.css' %}" rel="stylesheet">
于 2012-11-29T13:36:54.647 に答える
5

にあるものをコピーしましたbase.css

{% load admin_static %}

その後

<link href="{% static 'admin/css/base.css' %}" rel="stylesheet">

base.css(あなたの場合のように、必要なものに置き換えてlogin.cssください)

に入っていることを確認django.contrib.staticfilesしてくださいINSTALLED_APPS

(以前にアントンが提案したように構成STATIC_ROOTして実行する必要はありませんでした)manage.py collectstatic

于 2013-05-19T10:00:11.353 に答える