template - linebreaksbr django
Manera apropiada de manejar el `adminmedia` templatetag desaprobado y{% admin_media_prefix%} (2)
Acabo de copiar lo que está en base.css
:
{% load admin_static %}
y entonces
<link href="{% static ''admin/css/base.css'' %}" rel="stylesheet">
(Reemplace base.css
con lo que necesite, como login.css
en su caso)
Asegúrese de tener django.contrib.staticfiles
en sus INSTALLED_APPS
.
(No tuve que configurar STATIC_ROOT
y ejecutar manage.py collectstatic
como lo sugirió anteriormente Anton)
A partir de django 1.5, https://docs.djangoproject.com/en/1.5/releases/1.5/#miscellaneous
Se eliminó la biblioteca de etiquetas de plantilla adminmedia, que solo contenía la etiqueta de plantilla obsoleta {% admin_media_prefix%}. El intento de cargarlo con {% load adminmedia%} fallará. Si sus plantillas aún contienen esa línea, debe eliminarla.
Entonces, ¿cuál es la forma adecuada de reemplazar el código que se encuentra en las bibliotecas heredadas y en mis proyectos heredados que aún utilizan {% load adminmedia %}
y carga css como: -
<link rel="stylesheet" type="text/css" href="{% load adminmedia %}{% admin_media_prefix %}css/login.css">
?
Desde Django 1.3 puedes usar la aplicación django.contrib.staticfiles .
Asegúrese de que django.contrib.staticfiles esté incluido en su INSTALLED_APPS y que las opciones STATIC_ROOT y STATIC_URL estén especificadas en su configuración.py.
Luego ejecute el comando manage.py collectstatic
y todos los archivos estáticos de las aplicaciones se recopilarán en la carpeta STATIC_ROOT.
En las plantillas puede usar la variable de contexto {{ STATIC_URL }}
(asegúrese de que django.core.context_processors.static esté incluido en TEMPLATE_CONTEXT_PROCESSORS) o la etiqueta de plantilla {% static %}
.
<link href="{{ STATIC_URL }}admin/css/login.css" rel="stylesheet">
o
{% load staticfiles %}
<link href="{% static ''admin/css/login.css'' %}" rel="stylesheet">