Django: CSS funktioniert nicht

8

Ich bin immer noch neu im Django und habe Probleme mit meiner CSS-Arbeit.
Ich habe die Richtung vom Link: Django Static Link-Tutorial zur Handhabung statischer Dateien verfolgt. Aber es funktioniert immer noch nicht.

Einstellungen

%Vor%

Ansicht

%Vor%


index.html

%Vor%

Und Verzeichnisorganisation

  

src- & gt; staticfiles- & gt; css- & gt; style.css



Vielen Dank, Ihre Hilfe und Zeit wird sehr geschätzt!

    
AustinT 19.11.2012, 00:55
quelle

2 Antworten

18

Damit Django statische Dateien bereitstellen kann, müssen Sie einige Einstellungen vornehmen.

STATIC_URL

Diese Einstellung gibt an, welcher URL statische Dateien zugeordnet werden sollen. Das hast du schon gemacht.

STATICFILES_DIRS

Dies gibt alle Ordner auf Ihrem System an, in denen Django nach statischen Dateien suchen soll. Die Idee ist, dass Sie möglicherweise ein paar Apps in Ihrem Projekt haben und jede App einen anderen Satz statischer Dateien benötigt. Aus organisatorischen Gründen kann jede App ein static -Verzeichnis enthalten, in dem nur die statischen Dateien gespeichert werden. Also muss Django eine Möglichkeit haben zu wissen, wo diese Verzeichnisse sind. Dies ist, was diese Einstellung ist.

STATIC_ROOT

Diese Einstellung gibt an, wo Django alle statischen Dateien kopiert und nicht wo die statischen Dateien bereits vorhanden sind. Die Idee dahinter ist, dass Django nach dem Verlassen der Entwicklung keine statischen Dateien mehr liefern kann, weil ich hier nicht hingehen werde (es ist in der Artikel ). Für die Produktion sollten sich jedoch alle statischen Dateien in einem einzigen Verzeichnis befinden und nicht in vielen, wie in STATICFILES_DIRS angegeben. Diese Einstellung gibt also ein Verzeichnis an, in das Django alle statischen Dateien aus allen Dateien in STATICFILES_DIRS kopiert, indem er den folgenden Befehl ausführt:

%Vor%

Bitte beachten Sie, dass dies nur notwendig ist, wenn Sie in Produktion gehen und dass das hier angegebene Verzeichnis nicht mit einem Verzeichnis in STATICFILES_DIRS übereinstimmen kann.

Urls.py

In der Entwicklung für Django, um Ihre statischen Dateien zu liefern, müssen Sie die statischen URLs in Ihre URLs.py einfügen:

%Vor%

Sobald Sie alle oben genannten Dinge abgeschlossen haben, sollten Ihre statischen Dateien so lange verwendet werden, wie Sie DEBUG = True haben. Aus der obigen Liste scheinen Sie nur STATIC_URL zu vervollständigen. Bitte beachten Sie auch, dass alle oben beschriebenen Schritte in den Dokumenten enthalten sind, die Sie in Ihrer Frage verlinkt haben ( link ). Es mag am Anfang etwas verwirrend sein, aber wenn Sie es ein paar Mal lesen, wird es klarer.

    
miki725 19.11.2012, 01:48
quelle
1

Das Hinzufügen von RequestContext zur Antwort sollte die Variable STATIC_URL in die Vorlage laden.

Versuchen Sie zu ändern:

%Vor%

zu:

%Vor%

Siehe die Django-Dokumentation auf statische Dateien in Vorlagen für weitere Informationen.

    
kavdev 19.11.2012 02:05
quelle

Tags und Links