2012-01-25 13 views
8

こんにちは、Google Visualization apiをjinjaテンプレートに挿入しようとしていました。 私はサンプルのパラメータを取り、API にそれを渡されたが、それは'と& に単一引用符と二重引用符に変換される。ここスクリプトです:ここではJinjaテンプレートは、二重引用符または一重引用符をレンダリングします。' "

 <script type="text/javascript"> 
      //load the Google Visualization API and the chart 
      google.load('visualization', '1', {'packages': ['columnchart']}); 

      //set callback 
      google.setOnLoadCallback (createChart); 

      //callback function 
      function createChart() { 

       //create data table object 
       var dataTable = new google.visualization.DataTable(); 

       //define columns 
       dataTable.addColumn('string','Quarters 2009'); 
       dataTable.addColumn('string', 'Earnings'); 

       //define rows of data 
       // answerjson=answerjson.replace("&#39;",'"'); 
       {% set answerjson1='[["1": "Saturday"], ["6": "Sunday"], ["1": "Wednesday"], ["1": "Monday"], ["1": "Monday"], ["1": "Tuesday"], ["1": "Sunday"]' %} 

       dataTable.addRows({{answerjson1}}); 

       //instantiate our chart object 
       var chart = new google.visualization.ColumnChart (document.getElementById('chart')); 

       //define options for visualization 
       var options = {width: 400, height: 240, is3D: true, title: 'Company Earnings'}; 

       //draw our chart 
       chart.draw(dataTable, options); 

      } 
</script> 

はAPI I have put the screenshot because here it is rendered as double quotes

に渡された入力され、

私が何をする必要があるのを助けてください。これは働い

dataTable.addRows({{ answerjson1 | safe }}); 

答えて

17

safeテンプレートフィルタを使用してください。私は{{answerjson1 | e}}を試していました
+0

ありがとう: – shobhit

+1

この回答は私にドキュメントを指摘し、そこに私のニーズに合ったフィルターtojsonを見つけました:) – paranoidhominid

関連する問題