Попытка переопределить фильтр сериализации 'to json' в шаблоне jinja2 для использования моей пользовательской функции сериализации json.
Согласно документам https://jinja.palletsprojects.com/en/2.9.x/api/, там написано 2 «политики», которые должны позволять это. json .dumps_function или json .dumps_kwargs. Я пробовал оба, и ни один из них, похоже, не дал никакого эффекта.
У меня он работает как мой собственный фильтр (у нас есть функция 'json_serial', определенная в другом месте).
def to_json_custom(value):
return json.dumps(value, default=json_serial)
app.jinja_env.filters['tojson_custom'] = to_json_custom
Но так как Я капризный, я хочу знать, почему другой способ не работает. Я делаю что-то глупое или flask мешаю мне. Почему ни один из них ничего не делает (без ошибок, они проходят безрезультатно) в одном и том же месте кода.
app.jinja_env.policies['json.dumps_function'] = to_json_custom
app.jinja_env.policies['json.dumps_kwargs'] = {'default' : json_serial}
flask 0.12.2
jinja2 2,9,6
python 2,7