Шаблон Jinja отображает двойные или одинарные кавычки как ' "
Привет, я пытался заполнить Google Visualization api в шаблоне jinja . Я взял параметры образца и передал его API но это преобразование одинарных и двойных кавычек в ' and & Вот сценарий:
<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("'",'"');
{% 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
пожалуйста, помогите мне, что мне нужно делать.
2 ответов
использовать безопасное фильтр шаблон:
dataTable.addRows( {{ answerjson1 | safe }} );
фильтр tojson отображает данные в форме json:
объект DataTable.addRows ({{ answerjson1 / tojson}});
безопасный фильтр может генерировать ошибки, если вы анализируете json после. Например, фильтр safe дает строку json, образованную одинарными кавычками, в то время как JSON.функция parser () может иметь в качестве входных данных только строку с двойными кавычками.