Risposte:
Se stai utilizzando il server di sviluppo, segui la guida pratica del progetto django per la gestione dei file statici per configurare i tuoi URL, quindi fai riferimento ai tuoi file multimediali nel modello, ad esempio un'immagine all'interno di una cartella di immagini da /site_media/images/foo.gif
.
Più in generale, stai chiedendo come servire un file statico da Django. Se stai utilizzando Apache, dovresti leggere http://docs.djangoproject.com/en/dev/howto/deployment/modpython/
Se stai utilizzando il server di sviluppo (ad esempio, sul tuo laptop), leggi http://docs.djangoproject.com/en/dev/howto/static-files/
Prendi nota del grande e grosso disclaimer relativo al server di sviluppo Django:
Questo ha causato problemi anche a me per un po '(404 errori non trovati). La parte mancante per me era modificare la STATICFILES_DIRS
tupla in settings.py per darmi questo:
STATICFILES_DIRS = (
# Put strings here, like "/home/html/static" or "C:/www/django/static".
# Always use forward slashes, even on Windows.
# Don't forget to use absolute paths, not relative paths.
os.path.join(os.path.dirname(__file__),'media').replace('\\','/'),
)
Questo ha poi raccolto i miei file CSS in una cartella chiamata "media" che era al livello più alto del mio progetto django.
Ho avuto anche:
MEDIA_ROOT = ''
MEDIA_URL = ''
STATIC_ROOT = ''
STATIC_URL = '/media/'
(assicurati di avere il comando /
sopra STATIC_URL
)
Ovviamente, come detto sopra, è necessario che il file CSS sia correttamente incluso dai file html. Avevo:
<link href="{{ STATIC_URL }}css/ea_base.css" rel="stylesheet" type="text/css" media="screen" />
.replace('\\','/')
non è necessario.
Quali impostazioni devo fare per far vedere a Django il file css?
Nessuna.
Assicurati che il tuo modello includa il file CSS (come lo standard HTML fa) e metti il file CSS sul server multimediale.
Per chiarire: con Django si consiglia vivamente di servire tutti i media (tutto ciò che non è HTML dinamico) da un'istanza del server diversa. Il modo in cui implementarlo dipende completamente da te, ma la maggior parte delle persone crea un sottodominio.
I documenti ufficiali di Django non mi hanno aiutato. Spero che il post sul blog " Django: come servire file statici " aiuti alcuni di voi.
Bene, il modo più semplice per usare css con django è aggiungerlo ai tuoi modelli come file statici.
Ma è un po 'come ajax, non ho trovato nulla che dica come includerlo in modo standard.
C'è un modulo css-compressor per django se vuoi ottimizzarne le dimensioni.