質問

DjangoサイトでProtovisを機能させようとしています。これが私のサンプルコードです:

<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>

このファイルをFirefoxで直接開くと、Protovis 'Hello World'イメージが文字列「{{object.name}}」で表示されます。

ただし、djangoサーバーから.htmlファイルテンプレートにアクセスすると、{{object.name}}(オブジェクトの名前が印刷)のみが表示されます。

DjangoでのProtovisの使用に対応しているのは、今のところ同様の問題を発見していません。誰かがそれを機能させたか、私が間違っていることを知っているなら、私に知らせてください。

ありがとう、

役に立ちましたか?

解決

JavaScriptファイルを使用して要求しました src="protovis-r3.2.js"

HTMLファイルを直接見ると、ブラウザはProtovis-R3.2.jsというファイルの.htmlファイルと同じディレクトリを表示します。

ただし、Djangoにこの同じページを提供するように依頼すると、同じプロトコルには従いません。見る この記事 詳細については。

それを機能させるために:

  • Protovis-R.32.jsファイルを新しいディレクトリに移動します。 /path/to/my/django_site/static (ここで/path/to/my/django_siteはdjangoアプリへの絶対的なパスです)

  • 行でurls.pyを構成します:

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

  • HTMLコードのスクリプトタグのSRC属性を次のように変更します。

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

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top