django url statique statique statique de la racine

Je suis confus par static root et de vouloir clarifier les choses.

Pour servir les fichiers statiques dans Django, le suivant doit être dans settings.py et urls.py:

import os
PROJECT_DIR=os.path.dirname(__file__)

1. Chemin absolu vers le répertoire dans lequel les fichiers statiques devraient être recueillies

STATIC_ROOT= os.path.join(PROJECT_DIR,'static_media/')

2. Préfixe d'URL pour les fichiers statiques

STATIC_URL = '/static/'

3. Des emplacements supplémentaires pour les fichiers statiques

STATICFILES_DIRS = ( os.path.join(PROJECT_DIR,'static/'),)

...et dans urls.py les lignes suivantes:

from django.contrib.staticfiles.urls import staticfiles_urlpatterns
urlpatterns += patterns('', (
    r'^static/(?P<path>.*)$',
    'django.views.static.serve',
    {'document_root': settings.STATIC_ROOT}
))

4. Nous utilisons également des python manage.py collectstatic

Questions:

  1. Quelqu'un pourrait-il expliquer le flux de travail pour moi: comment les choses devraient idéalement être fait. Maintenant, j'ai copier/coller le code ci-dessus des extraits dans leurs emplacements désignés et continuer à faire de nouveaux fichiers dans le répertoire statique et il fonctionne. Dans mon settings.STATIC_ROOT, cependant, je l'ai déjà dit dans un autre répertoire.

  2. Ce serait génial si quelqu'un pouvait expliquer le flux de travail de chaque paramètre: la façon dont les fichiers sont collectés et gérés, et ce serait une bonne pratique à suivre.

Grâce.

  • Pourriez-vous préciser ce que vous entendez par "d'expliquer le flux de travail'? aussi votre url modèles doivent être conditionnelle à ce que si vous êtes en développement dans la partie 3. vous pouvez le faire en ajoutant if settings.DEBUG: django n'est pas très bon à servir à la statique des médias, ce devrait être laissée à un vrai serveur web.
  • Salut @user993563 je ne peux même pas trouver la solution dans plusieurs forum ce que je veux. mais vos questions à l'expliquer clairement grâce de l'homme... du beau travail...
InformationsquelleAutor user993563 | 2011-12-31