2016-11-22 6 views
1

に含まれて私は、次のを持っているDjangoのHTMLテンプレートファイルに含まれます:要求が行われ、ページが表示され、マウスのホバー上のツールチップされている場合がツールチップの問題は、Djangoのテンプレート

{% include 'categories_chart.svg' %}

不完全な情報を持っています - 値は表示されますが、項目のタイトルは表示されません。この問題は、要求されたHTMLファイル内でのみ発生します。実際のsvgファイルには、個別に読み込まれたときに、適切な情報が含まれています。ここでは、個別に開いていたときにSVGファイル内のツールチップには、次のとおりです。

enter image description here

をそして、ここに含まれているまったく同じSVGファイルとDjangoのブラウザの応答で不完全ツールヒントです:

enter image description here

これを引き起こしているのは何ですか?ツールチップは、Djangoの応答の中でこのような方法だけではうんざりしているようですが、これは最も顕著で再現性のあるエラーですので、まずそれに焦点を当てています。

答えて

2

私はSVGファイルの代わりにBase64データURI出力を使用してこれを解決することができました。詳細については、Paygal output pageを参照してください。

名前に出力を割り当て、その名前をビューからHTMLテンプレートにレンダリングし、コンテキストを使用してグラフを埋め込みます。ですから、例えば:

あなたのDjangoのビューで、その後your_chart = pygal.Line() (chart code goes here) some_name = your_chart.render_data_uri()

def charts_page(request): return render_to_response('charts_page.html', {'your_chart': some_name})

最後に、あなたのcharts_page.htmlテンプレートで:

<embed type="image/svg+xml" src= {{ your_chart|safe }} />

はこれが表示されますすべてチャートは完璧に、ツールチップのエラーはありません。

関連する問題