J'utilise Django 3.0.3 et Python 3.7.6.
J'ai suivi la documentation Django sur https://docs.djangoproject.com/en/3.0/howto/static-files/ mais je ne trouve pas ce qui ne va pas.
Annuaire :
{% load static %} <link rel="stylesheet" href="{% static "css/main.css" %}">
settings.py:
INSTALLED_APPS = [ ... 'django.contrib.staticfiles', ] ... STATIC_URL = '/static/'
Lorsque j'essaie d'utiliser des fichiers statiques dans mes modèles:
project_name -app_name -static -css -main.css -js ... -project_name ... -settings.py
pycharm montre
référence de modèle non résolue '"css / main.css"'
affichage du terminal
"GET /static/css/animate.css HTTP / 1.1" 404 1671
3 Réponses :
Utilisez ceci dans votre url.py
urlpatterns+=static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) urlpatterns+=static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)
J'ai résolu ce problème après ces étapes:
1.Ajoutez le code suivant dans settings.py
STATICFILES_DIRS = (
os.path.join (BASE_DIR, 'static /'),
)
2.Ajoutez type = "text / css"
dans mon modèle
Bien que cela fonctionne pour moi, je ne sais pas pourquoi.
J'ai rencontré le même problème que vous, mais j'utilise django 3.1
.
Je n'ajoute cette ligne qu'en tant que document officiel :
Dans settings.py
{% load static %} ... <link rel="stylesheet" href="{% static 'css/application.css' %}" type="text/css" />
Dans le fichier .html
... STATIC_URL = '/static/' STATICFILES_DIRS = [BASE_DIR / 'static']
Et cela a fonctionné aussi.
p >
Pouvez-vous reformater votre liste d'annuaire pour qu'elle ait du sens?
Avez-vous: 1) défini STATIC_ROOT et / ou STATICFILES_DIRS 2) exécuté collectstatic 3) ajouté des modèles d'URL pour les fichiers statiques? DEBUG = vrai ou faux?
Merci pour les conseils. Je viens de commencer à apprendre Django et ces conseils m'ont aidé à mieux le comprendre.