Как получить список Python в Jinja2 и вставить как массив Javascript?

Я создаю веб-сайт с использованием Python Flask Framework, который включает механизм шаблонов Jinja2. Теперь я хочу передать простой список строк из Flask в Jinja2 для включения в Javascript на веб-сайте. Используя советы в этом ответе SO, я попытался сделать это следующим образом:

@app.route('/index')
def index():
    theList = ['A', 'B']
    return render_template('index.html', theList=json.dumps(theList))

и в шаблоне его Javascript я делаю это:

var theList = {{ theList }};

Но когда я смотрю в источник генерации Javascript, я вижу это:

var theList = ["A", "B"];

Я также пробовал theList=map(json.dumps, theList)), что приводит к еще более странному результату:

var theList = ['"A"', '"B"'];

Кто-нибудь знает, как я могу правильно передать простой список через Jinja2 в массив Javascript? Все советы приветствуются!


person kramer65    schedule 27.06.2014    source источник
comment
Используйте listobj|tojson|safe, здесь не нужно использовать json.dumps().   -  person Martijn Pieters    schedule 27.06.2014
comment
Круто, спасибо за подсказку! Работает как шарм. Если вы добавите свой комментарий в качестве ответа, я могу принять его .. :)   -  person kramer65    schedule 27.06.2014
comment
Я не могу, потому что я уже закрыл ваш вопрос как дубликат. :-)   -  person Martijn Pieters    schedule 27.06.2014