рендеринг данных JSON с помощью новой строки колба / jinja2 - PullRequest
0 голосов
/ 21 мая 2018

Я хочу, чтобы колба отображала шаблон с json, который включает переводы строки.Однако JSON.parse() выдает ошибки.Я хочу найти лучший способ справиться с этим типом информации.

Пример приложения Mini:

from flask import Flask, render_template_string
import json

app = Flask(__name__)

@app.route('/')
def index():
    example = {'blabla': 'what\'s up\n\nnot much'}
    return render_template_string('''<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <title>title</title>
</head>
<body>
<script>
JSON.parse('{{ some_json_data | tojson }}')
</script>
</body>
</html>
''', some_json_data=example)

Комбинации, которые я пробовал до сих пор:

example = {'blabla': 'oh no\n\n'}
JSON.parse('{{ some_json_data | tojson }}')
SyntaxError: JSON.parse: bad control character in string literal at line 1 column 22 of the JSON data

example = {'blabla': 'oh no\n\n'}
JSON.parse('{{ some_json_data | tojson(indent=4) }}')
SyntaxError: '' string literal contains an unescaped line break


example = json.dumps({'blabla': 'what\'s up\n\nnot much'})
JSON.parse('{{ some_json_data }}')
SyntaxError: JSON.parse: expected property name or '}' at line 1 column 2 of the JSON data

example = json.dumps({'blabla': 'what\'s up\n\nnot much'})
JSON.parse('{{ some_json_data | safe }}')
SyntaxError: missing ) after argument list

1 Ответ

0 голосов
/ 21 мая 2018

Во время написания этого вопроса я попробовал еще больше комбинаций и нашел подходящую.

example = json.dumps({'blabla': 'what\'s up\n\nnot much'})
JSON.parse({{ some_json_data | tojson }})
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...