Question

Je suis en train de faire fonctionner correctement Protovis dans mon site Django. Voici mon exemple de code:

<html>
    <head>    
    <script type="text/javascript" src="protovis-r3.2.js"></script>
    </head>
    <body>
    <script type="text/javascript+protovis">
        new pv.Panel().width(150).height(150).anchor("center")
            .add(pv.Label)
            .text("Hello, world!")
        .root.render();
    </script>
    {{ object.name }}
    </body>
</html>

Quand j'ouvre ce fichier directement dans Firefox, une image Bonjour tout le monde 'Protovis s'affiche toguether avec la chaîne "{{object.name}}".

Mais pour accéder au modèle de fichier .html de mon serveur Django, je ne vois le {{object.name}} (nom de l'objet imprimé).

Je n'ai pas trouvé à ce jour des questions similaires, la restauration à l'utilisation Protovis dans Django. Si quelqu'un a obtenu ce travail ou de savoir ce que je fais mal, s'il vous plaît laissez-moi savoir.

Merci,

Était-ce utile?

La solution

Vous avez demandé le fichier javascript à l'aide src="protovis-r3.2.js"

Quand vous regardez le fichier html directement, votre navigateur regardera dans le même répertoire que le fichier .html pour un fichier appelé protovis-r3.2.js.

Cependant, lorsque vous demandez à Django pour servir cette même page, il ne suit pas le même protocole. Voir cet article pour plus d'informations.

Pour obtenir au travail:

  • Déplacer le fichier protovis-r.32.js à un nouveau répertoire: /path/to/my/django_site/static (où / chemin / vers / ma / django_site est le chemin absolu à l'application django)

  • Configurer urls.py avec la ligne:

(r'^static/(?P<path>.*)$', 'django.views.static.serve', {'document_root': '/path/to/my/django_site/static'}),

  • Modifier l'attribut src de la balise de script dans votre code html à:

src="/static/protovis-r3.2.js"

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top