Если вам не нужно работать с массивом на стороне Jinja, а просто передать пакет в javascript, я бы рекомендовал использовать:
json.dumps(python_object_or_array)
https://docs.python.org/2/library/json.html
Эта строковая переменная, когда она передается в jinja, передается в javascript без получения пиктонических меток Юникода на переменных.И, между прочим, скорее всего, исправит True
и False
и будет исправлено на true
и false
, как и ожидал javascript.
Так что в контексте фляги это будет выглядеть примерно так:
@app.route('/')
def home():
if userNeedsToLogin():
session['routePath'] = request.full_path
return render_template('login.html', error=None)
else:
return render_home()
def render_home():
print "Rendering Home"
results = get_some_database_query_results()
data_out = json.dumps(results)
return render_template('home.html', data=data_out)
home.html
<!DOCTYPE HTML>
<html>
<head>
<!-- import javascript function processData -->
</head>
<body>
<!-- page of stuff -->
<script>
processData( {{ data|safe }} );
</script>
</body>
</html>