Django-fr

Forum

#1 31-05-2012 10:54:24

car00x
Membre
Inscription : 31-05-2012
Messages : 39

interpretation du css impossible

Bonjour la communauté,
Je me suis à django avec la version 1.3.1 j'ai un problème d'interprétation du code css, voici la structure de mon projet:

All
|-static(-css,-image)

|-template (base.html,header.html,footer.html ,index.html)

|-admin
|-db
|-media
|-settings.py
|-urls.py
|-manage.py
|-init.py

et voici comment j'ai parametré le fichier settings.py

# Absolute filesystem path to the directory that will hold user-uploaded files.
# Example: "/home/media/media.lawrence.com/media/"
MEDIA_ROOT = '/home/car00x/all/media/'

# URL that handles the media served from MEDIA_ROOT. Make sure to use a
# trailing slash.
# Examples: "http://media.lawrence.com/media/", "http://example.com/media/"
MEDIA_URL = '/media/'

# Absolute path to the directory static files should be collected to.
# Don't put anything in this directory yourself; store your static files
# in apps' "static/" subdirectories and in STATICFILES_DIRS.
# Example: "/home/media/media.lawrence.com/static/"
STATIC_ROOT = '/home/car00x/all/static',

# URL prefix for static files.
# Example: "http://media.lawrence.com/static/"
STATIC_URL = '/static/'

# URL prefix for admin static files -- CSS, JavaScript and images.
# Make sure to use a trailing slash.
# Examples: "http://foo.com/static/admin/", "/static/admin/".
ADMIN_MEDIA_PREFIX = '/static/admin/'

# Additional locations of static files
STATICFILES_DIRS = (
    # Put strings here, like "/home/html/static" or "C:/www/django/static".
    # Always use forward slashes, even on Windows.
    # Don't forget to use absolute paths, not relative paths.
    '/home/car00x/all/static'
)

Ai-je fait une erreur dans le paramétrage du fichier settings.py?
merci pour votre aide.

Hors ligne

#2 31-05-2012 10:59:21

Florian Strzelecki
Membre
Inscription : 11-08-2010
Messages : 40

Re : interpretation du css impossible

Bonjour,

Interprétation des css ? C'est à dire ?
Serveur de dev de Django ? Environnement de pris ? C'est quoi l'erreur au
niveau des css exactement (403, 404, 500) ?

Bref, plus de précision, car tes settings ont l'air bon sinon.

Florian S.
Le 31 mai 2012 11:55, "carlos" <car00x _AT_ hotmail.com> a écrit :

> Bonjour la communauté,
> Je me suis à django avec la version 1.3.1 j'ai un problème
> d'interprétation du code css, voici la structure de mon projet:
>
> All
> |-static(-css,-image)
>
> |-template (base.html,header.html,footer.html ,index.html)
>
> |-admin
> |-db
> |-media
> |-settings.py
> |-urls.py
> |-manage.py
> |-init.py
>
> et voici comment j'ai parametré le fichier settings.py
>

# Absolute filesystem path to the directory that will hold
> user-uploaded files.
> # Example: "/home/media/media.lawrence.com/media/"
> MEDIA_ROOT = '/home/car00x/all/media/'
>
> # URL that handles the media served from MEDIA_ROOT. Make sure to use a
> # trailing slash.
> # Examples: "http://media.lawrence.com/media/",
> "http://example.com/media/"
> MEDIA_URL = '/media/'
>
> # Absolute path to the directory static files should be collected to.
> # Don't put anything in this directory yourself; store your static files
> # in apps' "static/" subdirectories and in STATICFILES_DIRS.
> # Example: "/home/media/media.lawrence.com/static/"
> STATIC_ROOT = '/home/car00x/all/static',
>
> # URL prefix for static files.
> # Example: "http://media.lawrence.com/static/"
> STATIC_URL = '/static/'
>
> # URL prefix for admin static files -- CSS, JavaScript and images.
> # Make sure to use a trailing slash.
> # Examples: "http://foo.com/static/admin/", "/static/admin/".
> ADMIN_MEDIA_PREFIX = '/static/admin/'
>
> # Additional locations of static files
> STATICFILES_DIRS = (
>    # Put strings here, like "/home/html/static" or
> "C:/www/django/static".
>    # Always use forward slashes, even on Windows.
>    # Don't forget to use absolute paths, not relative paths.
>    '/home/car00x/all/static'
> )
>

>
> Ai-je fait une erreur dans le paramétrage du fichier settings.py?
> merci pour votre aide.
> _______________________________________________
> django mailing list
> django _AT_ lists.afpy.org
> http://lists.afpy.org/mailman/listinfo/django
>

Hors ligne

#3 31-05-2012 11:03:30

car00x
Membre
Inscription : 31-05-2012
Messages : 39

Re : interpretation du css impossible

ca n'affiche pas d'erreur la page s'affiche bien mais mon code css pour le design n'est pas pris en compte

Hors ligne

#4 31-05-2012 11:58:04

David Thenon
Membre
Inscription : 11-08-2010
Messages : 156
Site Web

Re : interpretation du css impossible

Salut,

Donc si tu regardes les logs de ton serveur (le serveur de développement livré
avec Django je suppose), tu ne vois aucune erreur sur les requêtes ?

Si les styles CSS ne sont pas appliqués en règle général ça peut être dû à :

* Un problème de ton ou tes sélécteurs CSS qui ne coincident pas avec ta
structure HTML;
* Si tu utilises des fichiers CSS (et non du CSS intégré directement à tes
templates), ils ne sont pas chargés (ce qui devrait remonter une erreur http
que tu peux voir dans les logs du serveur web utilisé pour ton projet;
* Dans certains cas si ton HTML n'est pas correct, ce qui te ramènes au
premier point;

Ne pas oublier que tes fichiers CSS doivent être rangés dans tes "statics" et
que dans tes templates tu dois renseigner correctement le chemin vers tes CSS.

Hors ligne

#5 31-05-2012 13:01:07

car00x
Membre
Inscription : 31-05-2012
Messages : 39

Re : interpretation du css impossible

ok merci pour ta reponse, stp regarde si j'ai bien le lien vers mon fichier css
voici le code du template de base (base.html):

<html>
  <head>
   <title>{% block title %}ALLfreedoctors{% endblock %}</title>
  <link rel="stylesheet" type="text/css" media="all" href="../{{ STATIC_URL }}css/eclairage.css" />
   <script type="text/javascript" src="/site-media/jquery-1.4.2.min.js"></script>
 </head>
  <body>
  <table width="100%"  border="0" cellpadding="0" cellspacing="0">
                  <tr valign="top">
                    <td  align="center">
                     {% block header %}
        {% include "header.html" %}
        {% endblock %}
                    </td>
                    </tr>
            <tr valign="top">
              <td height="683">
                <br />  
  <table border="0" cellspacing="0" cellpadding="0" align="center" width="980" height="633">
     <tr valign="top">
       <td width="980"> 
       <br />
        <br />
{% block content %}
        <h3>Voici mon application : </h3>
        {% endblock %}
     </td>
    </tr>
</table>
<table border="0" cellspacing="0" cellpadding="0" align="center" width="980" height="22">
     <tr valign="top">
       <td height="22"  align="center" >


 {% block footer %}
        {% include "footer.html" %}
        {% endblock %}

</td>
    </tr>
</table>
 </td>
    </tr>
</table>
  </body>
</html>

Hors ligne

#6 31-05-2012 13:37:31

Florian Strzelecki
Membre
Inscription : 11-08-2010
Messages : 40

Re : interpretation du css impossible

1/ En premier : tu as mi "../{{STATIC_URL}}" : pourquoi "../" ? L'intérêt
de {{STATICT_URL}} c'est de ne pas avoir à ajouter "../" ou autre...

2/ Lance ton navigateur préféré (prenons Firefox pour l'exemple), et lance
la console de dev (F12, sous Chrome et IE il y a ça aussi), et regarde la
partie "réseau" lorsque tu charges la pages : une liste de requêtes
devraient s'afficher, dont une ligne pour les CSS. Cette ligne devrait
t'indiquer un code de status "200" pour une réussite, "304" pour du contenu
en cache, "404" pour du contenu non-trouvé, "500" pour une erreur serveur.

Cela devrait déjà t'en dire plus. Et lorsque quelque chose "ne marche pas",
ce sont parmi les premières choses à vérifier : est-ce que *tout* se charge
bien comme il faut ?

3/ Tu peux utiliser les statics pour tous les fichiers statiques, dont le
Javascript.

4/ Les tableaux, c'est soooo 98.

5/ Je déconseille les includes de templates pour des bouts fixe du layout
général (header/footer), surtout que le système de block et d'extend de
template permet de gérer des cas plus spécifiques de manière plus élégante.

2012/5/31 carlos <car00x _AT_ hotmail.com>

> ok merci pour ta reponse, stp regarde si j'ai bien le lien vers mon fichier
> css
> voici le code du template de base (base.html):
>
> [CODE]
> <html>
>  <head>
>   <title>{% block title %}ALLfreedoctors{% endblock %}</title>
>  <link rel="stylesheet" type="text/css" media="all" href="../{{
> STATIC_URL }}css/eclairage.css" />
>   <script type="text/javascript"
> src="/site-media/jquery-1.4.2.min.js"></script>
>  </head>
>  <body>
>  <table width="100%"  border="0" cellpadding="0" cellspacing="0">
>                                  <tr valign="top">
>                                    <td  align="center">
>                                         {% block header %}
>        {% include "header.html" %}
>        {% endblock %}
>                                        </td>
>                                        </tr>
>                        <tr valign="top">
>                          <td height="683">
>                                <br />
>  <table border="0" cellspacing="0" cellpadding="0" align="center"
> width="980" height="633">
>     <tr valign="top">
>           <td width="980">
>           <br />
>            <br />
> {% block content %}
>        <h3>Voici mon application : </h3>
>        {% endblock %}
>         </td>
>    </tr>
> </table>
> <table border="0" cellspacing="0" cellpadding="0" align="center"
> width="980" height="22">
>     <tr valign="top">
>           <td height="22"  align="center" >
>
>
>  {% block footer %}
>        {% include "footer.html" %}
>        {% endblock %}
>
> </td>
>    </tr>
> </table>
>  </td>
>    </tr>
> </table>
>  </body>
> </html>
> [/CODE]
> _______________________________________________
> django mailing list
> django _AT_ lists.afpy.org
> http://lists.afpy.org/mailman/listinfo/django
>

Hors ligne

#7 31-05-2012 14:27:01

car00x
Membre
Inscription : 31-05-2012
Messages : 39

Re : interpretation du css impossible

voici les erreurs affichées avec le console:


Failed to load resource: the server responded with a status of 404 (NOT FOUND) http://localhost:8000/css/eclairage.css
Failed to load resource: the server responded with a status of 404 (NOT FOUND) http://localhost:8000/site-media/jquery-1.4.2.min.js
Failed to load resource: the server responded with a status of 500 (INTERNAL SERVER ERROR) http://localhost:8000/static/img/logo.png
Failed to load resource: the server responded with a status of 500 (INTERNAL SERVER ERROR) http://localhost:8000/static/img/Forumimg_logo.jpg
Failed to load resource: the server responded with a status of 500 (INTERNAL SERVER ERROR) http://localhost:8000/static/img/allenligne.png
Failed to load resource: the server responded with a status of 500 (INTERNAL SERVER ERROR) http://localhost:8000/static/img/allsos.png

Hors ligne

#8 31-05-2012 14:43:36

Florian Strzelecki
Membre
Inscription : 11-08-2010
Messages : 40

Re : interpretation du css impossible

Bon, on progresse.

Tu as indiqué ceci :

STATIC_ROOT = '/home/car00x/all/static',
STATIC_URL = '/static/'

Et je note que tes urls sont :

"/css/eclairage.css" <- 404, en même temps ça ne risque pas d'être le bon
truc, puisqu'il devrait y avoir "/static/" devant.
"/static/img/logo.png" <- 500, mais côté répertoire est-ce que tu as bien
un répertoire "/home/car00x/all/static/img/" dans lequel se trouve
"logo.png" ?

Sinon, essaye d'aller sur http://localhost:8000/static/img/logo.png et
regarde quelle erreur il affiche.

2012/5/31 carlos <car00x _AT_ hotmail.com>

> voici les erreurs affichées avec le console:
>
>
> Failed to load resource: the server responded with a status of 404 (NOT
> FOUND) http://localhost:8000/css/eclairage.css
> Failed to load resource: the server responded with a status of 404 (NOT
> FOUND) http://localhost:8000/site-media/jquery-1.4.2.min.js
> Failed to load resource: the server responded with a status of 500
> (INTERNAL SERVER ERROR) http://localhost:8000/static/img/logo.png
> Failed to load resource: the server responded with a status of 500
> (INTERNAL SERVER ERROR) http://localhost:8000/static/img/Forumimg_logo.jpg
> Failed to load resource: the server responded with a status of 500
> (INTERNAL SERVER ERROR) http://localhost:8000/static/img/allenligne.png
> Failed to load resource: the server responded with a status of 500
> (INTERNAL SERVER ERROR) http://localhost:8000/static/img/allsos.png
> _______________________________________________
> django mailing list
> django _AT_ lists.afpy.org
> http://lists.afpy.org/mailman/listinfo/django
>

Hors ligne

#9 31-05-2012 14:58:58

car00x
Membre
Inscription : 31-05-2012
Messages : 39

Re : interpretation du css impossible

voici l'erreur qu'affiche http://localhost:8000/static/img/logo.png:

Traceback (most recent call last):

  File "C:\Python27\lib\site-packages\django\core\servers\basehttp.py", line 283, in run
    self.result = application(self.environ, self.start_response)

  File "C:\Python27\lib\site-packages\django\contrib\staticfiles\handlers.py", line 69, in __call__
    return super(StaticFilesHandler, self).__call__(environ, start_response)

  File "C:\Python27\lib\site-packages\django\core\handlers\wsgi.py", line 272, in __call__
    response = self.get_response(request)

  File "C:\Python27\lib\site-packages\django\contrib\staticfiles\handlers.py", line 59, in get_response
    return self.serve(request)

  File "C:\Python27\lib\site-packages\django\contrib\staticfiles\handlers.py", line 52, in serve
    return serve(request, self.file_path(request.path), insecure=True)

  File "C:\Python27\lib\site-packages\django\contrib\staticfiles\views.py", line 35, in serve
    absolute_path = finders.find(normalized_path)

  File "C:\Python27\lib\site-packages\django\contrib\staticfiles\finders.py", line 228, in find
    for finder in get_finders():

  File "C:\Python27\lib\site-packages\django\contrib\staticfiles\finders.py", line 242, in get_finders
    yield get_finder(finder_path)

  File "C:\Python27\lib\site-packages\django\utils\functional.py", line 124, in wrapper
    result = func(*args)

  File "C:\Python27\lib\site-packages\django\contrib\staticfiles\finders.py", line 263, in _get_finder
    return Finder()

  File "C:\Python27\lib\site-packages\django\contrib\staticfiles\finders.py", line 52, in __init__
    "Your STATICFILES_DIRS setting is not a tuple or list; "

ImproperlyConfigured: Your STATICFILES_DIRS setting is not a tuple or list; perhaps you forgot a trailing comma?

Hors ligne

#10 31-05-2012 15:07:51

Florian Strzelecki
Membre
Inscription : 11-08-2010
Messages : 40

Re : interpretation du css impossible

Et tu n'as pas réussi à la comprendre ? L'as-tu au moins lue (cette erreur)
?

=> "Your STATICFILES_DIRS setting is not a tuple or list; " <=

Je viens de voir qu'en effet, dans ta liste de settings copiée, tu as
oublié la virgule pour indiquer que c'est un tuple. Lorsqu'il n'y a qu'un
seul élément dans un tuple python, il est alors interprété comme son
contenu (ici une chaîne de caractère).

2012/5/31 carlos <car00x _AT_ hotmail.com>

> voici l'erreur qu'affiche http://localhost:8000/static/img/logo.png:
>
> [CODE]
> Traceback (most recent call last):
>
>  File "C:\Python27\lib\site-packages\django\core\servers\basehttp.py",
> line 283, in run
>    self.result = application(self.environ, self.start_response)
>
>  File
> "C:\Python27\lib\site-packages\django\contrib\staticfiles\handlers.py",
> line 69, in __call__
>    return super(StaticFilesHandler, self).__call__(environ,
> start_response)
>
>  File "C:\Python27\lib\site-packages\django\core\handlers\wsgi.py", line
> 272, in __call__
>    response = self.get_response(request)
>
>  File
> "C:\Python27\lib\site-packages\django\contrib\staticfiles\handlers.py",
> line 59, in get_response
>    return self.serve(request)
>
>  File
> "C:\Python27\lib\site-packages\django\contrib\staticfiles\handlers.py",
> line 52, in serve
>    return serve(request, self.file_path(request.path), insecure=True)
>
>  File
> "C:\Python27\lib\site-packages\django\contrib\staticfiles\views.py", line
> 35, in serve
>    absolute_path = finders.find(normalized_path)
>
>  File
> "C:\Python27\lib\site-packages\django\contrib\staticfiles\finders.py", line
> 228, in find
>    for finder in get_finders():
>
>  File
> "C:\Python27\lib\site-packages\django\contrib\staticfiles\finders.py", line
> 242, in get_finders
>    yield get_finder(finder_path)
>
>  File "C:\Python27\lib\site-packages\django\utils\functional.py", line
> 124, in wrapper
>    result = func(*args)
>
>  File
> "C:\Python27\lib\site-packages\django\contrib\staticfiles\finders.py", line
> 263, in _get_finder
>    return Finder()
>
>  File
> "C:\Python27\lib\site-packages\django\contrib\staticfiles\finders.py", line
> 52, in __init__
>    "Your STATICFILES_DIRS setting is not a tuple or list; "
>
> ImproperlyConfigured: Your STATICFILES_DIRS setting is not a tuple or
> list; perhaps you forgot a trailing comma?
> [/CODE]
> _______________________________________________
> django mailing list
> django _AT_ lists.afpy.org
> http://lists.afpy.org/mailman/listinfo/django
>

Hors ligne

#11 31-05-2012 15:11:18

David Thenon
Membre
Inscription : 11-08-2010
Messages : 156
Site Web

Re : interpretation du css impossible

Ça me semble explicite :

> ImproperlyConfigured: Your STATICFILES_DIRS setting is not a tuple or
> list; perhaps you forgot a trailing comma?

Dans tes settings, tu a mal rempli la variable "STATICFILES_DIRS" qui attends
un tuple de différent chemins supplémentaires pour tes répertoires contenant
des fichiers statiques.

En général on y met au moins le chemin des statics du projet (et pas ceux des
applis qui sont à ranger dans leur propre répertoire "statics" automatiquement
chargés par Django), ex :

STATICFILES_DIRS = ("/home/mon/projet/my_statics",)

Ne pas oublier la virgule après sinon ce n'est pas un tuple.

Lis bien la documentation sur les "staticfiles" de Django, tu ne dois pas
mélanger le répertoire des statics de destination (qui regroupent et publient
tout les statics) et celui des sources (là ou tu poses les statics qui seront
à publier).

Hors ligne

#12 31-05-2012 17:18:55

car00x
Membre
Inscription : 31-05-2012
Messages : 39

Re : interpretation du css impossible

jai corrigé ça mais ca ne marche toujours pa,je peux vous envoyé les donnée de mon projet pour ke vous me verifier ça?
merci

Hors ligne

#13 13-06-2012 08:31:06

Christophe, Jean-Charles Narbonne
Membre
Inscription : 23-06-2011
Messages : 30

Re : interpretation du css impossible

comment tu sers tes médias statique, si tu est en mode débug, vérifie ton
urls.py:

http://vpaste.net/eriQk

normalement il y a un truc comme la fin du fichier là pour indiquer à
django de servir les statics files.

2012/5/31 carlos <car00x _AT_ hotmail.com>

> jai corrigé ça mais ca ne marche toujours pa,je peux vous envoyé les
> donnée de mon projet pour ke vous me verifier ça?
> merci
> _______________________________________________
> django mailing list
> django _AT_ lists.afpy.org
> http://lists.afpy.org/mailman/listinfo/django
>

Hors ligne

#14 14-06-2012 10:45:17

car00x
Membre
Inscription : 31-05-2012
Messages : 39

Re : interpretation du css impossible

Bonjour, ça marche maintenant s'étais une erreur de ma part j'ai mal renseigné le fichier css.
merci pour vos apports.

Hors ligne

Pied de page des forums