我创建了一个 jinja2 模板,它应该支持独立渲染和 ajax 渲染。模板如下所示:
{% if is_ajax %}{% extends 'ajax.html' %}{% else %}{% extends 'site.html' %}{% endif %}
{% block title %}The Title{% endblock %}
{% block body %}The body{% endblock %}
site.html 工作正常,但我未能创建将标题和正文块呈现为 json 的 ajax.html。我试过类似的东西:
{
"copy":"{% block body %}Default Body{% endblock %}",
"title":"{% block title %}Default Title{% endblock %}",
}
但这当然不会将块转换为 json。
我也尝试过使用 Template.blocks 来使用 python 创建 json,但是这种方法需要手动渲染每个块,这感觉不是正确的做法。
这可能吗?