Maison >développement back-end >Tutoriel Python >Voici quelques options de titre, mettant l'accent sur le format de la question : * **STATIC_FILES_DIR, STATIC_ROOT et MEDIA_ROOT : quelle est la différence et quand dois-je les utiliser ?** * **Déploiement de Django : pourquoi STATI
En développement, STATIC_ROOT est effectivement inutile, car Django sert automatiquement les fichiers statiques de le répertoire de chaque application. Pendant le déploiement, STATIC_ROOT devient crucial pour que Nginx localise et diffuse du contenu statique.
STATIC_ROOT spécifie l'emplacement où Django collectera et affichera tous les fichiers statiques après avoir exécuté manage.py collectstatic . Cet emplacement doit être accessible par le serveur Web (par exemple, Nginx) qui dessert votre site Web.
STATICFILES_DIRS est un paramètre facultatif qui vous permet d'inclure des répertoires supplémentaires pour que collectstatic effectue une recherche. pour les fichiers statiques. Ceci est utile si vous avez des fichiers statiques en dehors des répertoires d'applications par défaut.
D'après le code que vous avez fourni, il semble que vous rencontriez initialement des problèmes car le fichier JS était introuvable à l'emplacement spécifié par STATIC_ROOT. En effet, admin.py recherche les fichiers dans le sous-répertoire admin/ de STATICFILES_DIRS, et non dans STATIC_ROOT.
En passant à STATICFILES_DIRS, vous avez pu résoudre ce problème car il inclut le chemin où se trouve le fichier JS.
Setting | Purpose | Deployment |
---|---|---|
STATIC_FILES_DIR | Additional directories for static files | n/a |
STATIC_ROOT | Location where static files are collected | Required |
MEDIA_ROOT | Location for user-uploaded files | n/a |
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!