Django laden nicht CSS?
Dies ist mein urls.py
import os.path
site_media = os.path.join(
os.path.dirname(__file__), 'site_media'
)
urlpatterns = patterns('',
url(r'^site_media/(?P<path>.*)$', 'django.views.static.serve',
{ 'document_root': site_media }),
)
Meine site_media Ordner und Stil.css-Datei wird in
myProjectFolder/myApp/static/site_media/css/style.css
und in meinem base.html Vorlage (alle meine anderen Vorlagen, erweitern diese base.html Vorlage) das ist was ich habe:
<head>
<title>{% block title %}{% endblock %}</title>
<link rel='stylesheet' type='text/css' href='/site_media/css/style.css' />
</head>
<body>
{% block header %}{% endblock %}
{% block content %}
<div id='header'></div>
{% endblock %}
</body>
und in meinem Stil.css, alles, was ich habe, ist dies:
#header {
display: inline;
background-color: black;
color: black;
border: 1px solid green;
}
und die CSS wird nicht angewendet, um die
#header
div. Irgendeine Idee warum?
InformationsquelleAutor user2719875 | 2014-01-13
Du musst angemeldet sein, um einen Kommentar abzugeben.
Das problem kommt aus 2 Bereichen.
1.
Definition site_media variable in urls.py die Datei wird abgeraten, da es nicht einhalten DRY-Prinzip. Sollte es gehalten werden, wie eine variable in Ihrem settings.py Datei, damit andere Module importieren, wenn nötig.
In Ihrem settings.py Datei, fügen Sie die folgende Zeile:
Ersetzen Sie Ihre urls.py Datei:
2.Sie verwenden sollten, django-template-tags, um die css-Datei. In Ihrem Basis-template, fügen Sie diese Zeile über dem head-tag:
Dann ersetzen:
mit:
Nach dem es funktionieren sollte.
InformationsquelleAutor hguochen
Zwei Optionen:
in urls.py
zu
2. Entfernen
hinzufügen und
und ändern
zu
Ist die zweite Methode vorzuziehen.
Hier arbeitet-code: https://github.com/lukaszszajkowski/s21083672
Hier finden Sie links zur Dokumentation und zu Lesen:
https://docs.djangoproject.com/en/dev/howto/static-files/#configuring-static-files
Media-Dateien werden serviert, statische Dateien nicht
InformationsquelleAutor fragles