2012-04-15 5 views
0

J'ai créé un projet Django en local qui fonctionne sans aucun problème. Mais, après une installation cherokee + uWSGI difficile sur Amazon AWS, mon projet n'affiche pas les fichiers internes Django .css.Django ne charge pas les fichiers .css internes

http://f.cl.ly/items/2Q2W3I3R0X1n2X3v0q2P/django_error.jpg <-/Admin/ ressemble à ceci

L'image est un écran de mon/admin /, ce qui devrait avoir un style différent, mais les fichiers .css ne sont pas chargés.

[pid: 23206|app: 0|req: 19/19] 83.49.10.217() {56 vars in 1121 bytes} [Sun Apr 15  05:50:24 2012] GET /static/admin/css/base.css => generated 2896 bytes in 6 msecs (HTTP/1.1 404) 1 headers in 51 bytes (1 switches on core 0) 

[pid: 23206|app: 0|req: 20/20] 83.49.10.217() {56 vars in 1125 bytes} [Sun Apr 15 05:50:24 2012] GET /static/admin/css/login.css => generated 2899 bytes in 5 msecs (HTTP/1.1 404) 1 headers in 51 bytes (1 switches on core 0) 

Ceci est un journal de Cherokee. Je ne comprends pas pourquoi il cherche les fichiers .css dans ce chemin. Cherokee devrait chercher les fichiers dans le répertoire original de Django, donc je n'ai pas changé les fichiers .css dans mon projet.

Un conseil? Merci beaucoup.

Répondre

1

Il semble que vous utilisiez Django 1.4 dans lequel c'est le comportement attendu.

Commander la section change Backwards incompatible release notes:

L'application d'administration inclus django.contrib.admin a depuis temps livré avec un ensemble par défaut des fichiers statiques tels que JavaScript, images et feuilles de style . Django 1.3 a ajouté une nouvelle application contrib django.contrib.staticfiles pour gérer ces fichiers de manière générique et conventions définies pour les fichiers statiques inclus dans les applications. À partir de Django 1.4, les fichiers statiques de l'administrateur suivent également cette convention , pour faciliter le déploiement des fichiers. Dans les versions précédentes de Django, il était également courant de définir un paramètre ADMIN_MEDIA_PREFIX pour pointer vers l'URL où les fichiers statiques de l'administrateur se trouvent sur un serveur Web . Ce paramètre a maintenant été déprécié et remplacé par le paramètre général STATIC_URL. Django va maintenant s'attendre à trouver les fichiers statiques admin sous l'URL/admin /.

Si vous avez déjà utilisé un chemin d'URL pour ADMIN_MEDIA_PREFIX (par exemple /media /) simplement se assurer STATIC_URL et STATIC_ROOT sont configurés et votre serveur Web sert les fichiers correctement. Le serveur de développement continue de servir les fichiers admin comme avant. Lisez les fichiers statiques howto pour plus de détails.

Si votre ADMIN_MEDIA_PREFIX est réglé sur un domaine spécifique (par exemple http://media.example.com/admin/), assurez-vous également définir votre réglage de STATIC_URL à l'URL correcte -. Par exemple, http://media.example.com/ *

+0

Merci! Tous ont été résolus. Je ne savais pas que le système de fichiers statiques avait changé dans Django 1.4. –

Questions connexes