Les fichiers statiques des applications tierces ne sont pas mis à jour dans mon site Django lorsqu'il est servi dans un navigateur avec runserver
.L'application Django ne met pas à jour les fichiers statiques dans le navigateur
Voici ma structure de fichier (avec de nombreux fichiers statiques):
- mysite
- mysite
- settings.py
- wsgi.py
. . .
- myapp
- templates
- base.html
- myapp.html
- models.py
- forms.py
. . .
- static
- MyApp
- mystyle.css
- autocomplete-light
- select2.css
base.html:
{% load static %}
<!DOCTYPE html>
<html>
<head>
<title>
{% block title %}Portal{% endblock title %}
</title>
{% block stylesheets %}
<link rel="stylesheet" type="text/css" href="{% static 'myapp/mystyle.css' %}?{% now "U" %}"/>
{% endblock stylesheets %}
</head>
<body>
{% block content %}
{% endblock content %}
</body>
<footer>
{% block footer %}
{% endblock footer %}
</footer>
</html>
myapp.html:
{% extends "myapp/base.html" %}
{% load static %}
{% load crispy_forms_tags %}
{% block title %}My App{% endblock title %}
{% block stylesheets %}
{{ block.super }}
{% endblock stylesheets %}
{% block content %}
{% crispy formset helper %}
{% endblock content %}
{% block footer %}
<script type="text/javascript" src="{% static 'admin/js/vendor/jquery/jquery.js' %}?{% now "U" %}"></script>
{{ formset.media }}
{% endblock %}
settings.py (pièce pertinente):
STATIC_ROOT = 'C:/Users/username/mysite/static/'
STATIC_URL = '/static/'
J'ai utilisé python manage.py collectstatic
pour collecter les fichiers statiques de mon application et de l'application tierce (django-autocomplete-light
) dans le STATIC_ROOT
. Ils existent dans le fichier STATIC_ROOT. J'ai ensuite servi sur mon site avec runserver
. Les fichiers statiques sont chargés avec le site et leurs chemins correspondent à STATIC_ROOT
. Lorsque je modifie les fichiers statiques (c'est-à-dire select2.css
pour l'application de saisie semi-automatique), les modifications s'affichent dans STATIC_ROOT
. Cependant, ils n'apparaissent pas dans le navigateur.
J'ai essayé de vider mon cache, de servir le site dans divers navigateurs, de tuer/redémarrer runserver, de tuer/redémarrer mon éditeur de texte, et de réexécuter collectstatic
. Aucune de ces tentatives n'a fonctionné - les fichiers statiques ne seront tout simplement pas mis à jour lorsque le site est chargé.
Comment puis-je mettre à jour les fichiers statiques dans le navigateur? Je pense que je pourrais manquer un paramètre dans settings.py
, ou il peut être un problème avec {{ formset.media }}
. Je suis à perte, cependant.
pouvez-vous regarder ce https://docs.djangoproject.com/en /1.11/intro/tutorial06/ – Robert
J'ai lu ça, mais je ne vois rien qui ne va pas dans la façon dont j'ai mis les choses en place. à quoi pensez-vous en particulier? –
Peut-être besoin de redémarrer et effacer tout le cache, peut-être votre navigateur retourne un cache_file (supprimer l'historique de votre navigateur) – dsgdfg