0
votes

Dans Django, le fichier CSS n'est pas chargé

S'il vous plaît dites-moi pourquoi le fichier statique ne peut pas être lu.
Je peux lire un fichier image mais je ne peux pas lire le fichier CSS et JS.
Je vois des questions connexes ailleurs, mais je ne peux pas les résoudre, donc je demande. XXX PRE>

Ma structure de répertoire. P>

<div class="text-center" style="background-image: url({% static 'image/back-image.jpg' %});">


8 commentaires

Pouvez-vous charger le fichier si vous allez à l'URL du fichier du navigateur - 127.0.0.1:8000/static/css/style.css ?


@xyres oui, je peux.


C'est très étrange. Si vous pouvez accéder à votre fichier à l'aide de l'URL, le navigateur doit également pouvoir le charger. Voyez-vous des erreurs dans la console de votre navigateur? De plus, quelle valeur voyez-vous dans href (vérifiez-le par Inspecter élément ).


Je comprends la cause. Selon Chrome, "statique / css / style.css" a été chargé. Changer le "dossier d'actifs" sur "Dossier statique" résoudra le problème, mais y a-t-il un problème avec mes "staticfiles_dirs"?


Non, le nom du dossier n'a pas d'importance, car vous l'avez configuré dans staticfiles_dirs . Quelle est la valeur de type de contenu en-tête de style.css fichier dans le journal réseau de votre navigateur?


@xyres je ne sais pas lequel, mais est-ce correct avec l'image ajoutée?


Ensemble static_root


@kan Cette image indique uniquement des fichiers JS. Sélectionnez CSS onglet et mettez à jour l'image.


3 Réponses :


0
votes

Utilisez ce code, vous devriez que CSS est un lien avec "./static/css/style.css"

#html
<!DOCTYPE html>
{% load static %}
{% load bootstrap4 %}
{% bootstrap_css %}
{% bootstrap_javascript jquery='slim' %}

<html lang="ja">
<head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">

    <link href="https://fonts.googleapis.com/earlyaccess/sawarabigothic.css" rel="stylesheet" >

    <link href="./static/css/style.css" rel="stylesheet">
    <title>Myapp</title>
    {% include "navi.html" %}
</head>
<body>
  {% block content %}{% endblock %}
  </div>
  <script src="{% static 'js/style.js' %}"></script>
</body>
</html>


2 commentaires

Mais le {% statique ...%} Tag automatiquement cela; Vous n'avez pas besoin de papier dur l'URL du fichier. Ce n'est pas une bonne pratique.


Je l'ai essayé, mais le résultat ne change pas. J'ai changé «statique» aux «actifs» et j'ai essayé.



0
votes

Si vous utilisez le serveur de développement (c.-à-d. './MANAGE.PY RUNSERVER'), vous devez inclure les éléments suivants dans votre urls.py xxx < P> Si vous courez en production, assurez-vous d'exécuter ./ manage.py collectibstaticstatic

et dans paramètres.py , assurez-vous de " ve spécifié static_root xxx


0 commentaires

0
votes

Ajouter ci-dessous code dans vos paramètres.py fichier xxx pré>

après cela ajoutez le code ci-dessous dans votre projet principal URLS.PY P>

urlpatterns += static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)


0 commentaires