[PYTHON] Comment référencer des fichiers statiques dans un projet Django

Lorsque vous souhaitez faire référence à un fichier statique tel qu'un fichier CSS dans le HTML d'un template Django, vous devez faire attention au référent. Si vous ne l'utilisez que dans l'environnement local, vous pouvez utiliser le chemin absolu, mais si vous souhaitez le conserver dans le projet pour le développement de l'équipe, etc., vous devez l'écrire différemment.

Autant que je sache, il existe deux façons de parcourir les fichiers statiques.

Environnement de travail: macOS Sierra version 10.12.5 Python 2.7.10 Django 1.8.1

Mettez-le dans le répertoire de l'application

Avec les paramètres par défaut, si vous créez un répertoire statique sous l'application que vous utilisez, Django le lira.

my_app
  └── static  
        └── my_app
              ├── css
              └── js

Définissez une liste de répertoires que vous souhaitez parcourir

Si vous voulez le mettre ailleurs, ajoutez le chemin de STATICFILES_DIRS dans le fichier de configuration afin que vous puissiez vous référer à ce répertoire et il recherchera le fichier.

STATICFILES_DIRS = [
    os.path.join(BASE_DIR, "static"),
]


Attention surtout si vous souhaitez modifier le css de l'écran d'administration de Django. Puisque base.css etc. utilisé sur l'écran d'administration est référencé par Django dans Python installé sur le PC, il est traité séparément du fichier projet. Si vous souhaitez modifier l'écran d'administration de votre projet, vous devez copier le modèle et le CSS depuis Django afin de pouvoir y faire référence.


Les références http://d.hatena.ne.jp/shinriyo/20130814/p4

Recommended Posts

Comment référencer des fichiers statiques dans un projet Django
Comment créer une API Rest dans Django
Comment télécharger des fichiers dans la vue de classe générique Django
Étapes pour créer un projet Django
Gestion des fichiers statiques lors du déploiement en production avec Django
Comment générer une requête à l'aide de l'opérateur IN dans Django
Comment afficher une colonne de fichiers spécifiée sous Linux (awk)
Comment supprimer des sessions expirées dans Django
Comment obtenir stacktrace en python
Comment déployer une application Django sur heroku en seulement 5 minutes
Comment faire des événements envoyés par le serveur dans Django
Fichiers de contrôle à construire dans le projet Golang
Comment lire des fichiers CSV avec Pandas
Pour trouver le nom de la vue avec l'espace de noms à partir de l'URL (path_info) dans Django
Comment afficher correctement les fichiers statiques Django sous l'environnement Amazon Linux2 + Apache
Comment incorporer des variables dans des chaînes python
Résumé de la façon d'importer des fichiers dans Python 3
Comment développer une application de panier avec Django
Comment créer un fichier JSON en Python
Comment implémenter un sélecteur de dégradé dans Houdini
Comment vérifier / extraire des fichiers dans un package RPM
Comment notifier les canaux Discord en Python
Configurer un module avec plusieurs fichiers dans Django
Comment écrire un document tuple nommé en 2020
Comment compter les nombres dans une plage spécifique
Comment lire des fichiers dans différents répertoires
Comment se moquer d'une fonction publique dans Pytest
Démarrer un projet Django
Comment compter le nombre d'éléments dans Django et sortir dans le modèle
Comment obtenir une liste de fichiers dans le même répertoire avec python
Comment spécifier un schéma dans les paramètres de la base de données Django
Comment convertir / restaurer une chaîne avec [] en python
Comment obtenir plusieurs objets de modèle au hasard dans Django
Comment déployer une application Django dans le cloud Alibaba
[Python] Comment développer des variables dans une chaîne de caractères
Un mémorandum sur l'utilisation de keras.preprocessing.image de Keras
Comment charger des fichiers dans Google Drive avec Google Colaboratory
Comment créer un environnement Django (python) sur Docker
Comment afficher DataFrame sous forme de tableau dans Markdown
Comment utiliser des variables dans les fichiers de définition d'unité systemd
Comment télécharger des fichiers depuis Selenium of Python dans Chrome
Comment ajouter des numéros de page à un fichier PDF (en Python)
Comment modifier le répertoire statique par défaut dans Flask
Comment utiliser Decorator dans Django et comment le créer
À moi-même en tant que débutant Django (1) -Création d'un projet / application-
Comment exécuter une commande à l'aide d'un sous-processus en Python
Comment exécuter Django sur IIS sur un serveur Windows
2 façons de lire tous les fichiers csv dans un dossier
[Linux] Comment mettre votre IP dans une variable
Comment lister les fichiers dans le répertoire spécifié (plusieurs conditions / recherche de sous-répertoire)
Comment utiliser fixture dans Django pour saisir des exemples de données associés au modèle utilisateur
Comment appeler une fonction
Shell pour créer un projet django
Comment pirater un terminal
Comment développer en Python
Déployer le projet django sur heroku
Comment écrire une validation personnalisée dans Django REST Framework
Comment découper un bloc de plusieurs tableaux à partir d'un multiple en Python
Comment utiliser ORM / Query Builder Orator de type Laravel avec Django