在django中将原始html与模板继承混合使用

时间:2014-05-10 10:48:59

标签: python django django-templates django-views

我相信,我的模型数据的复杂处理在我的视图中比在html模板内部更容易处理。因此,我将返回HttpResponse内部的原始html。但是,我仍然希望获得render_to_response提供的模板继承的好处。

因此,我想做类似以下的事情:

{% extends 'base.html' %}
{% block content %}
<!-- The raw HTML I've somehow 'inserted' -->
{% endblock %}

我不需要使用任何其他模板标签或变量评估。 Django有可能吗?我最好怎么做呢?

1 个答案:

答案 0 :(得分:0)

做这种事情的唯一方法是创建一个&#39;泛型&#39;模板,它将包含您已发布的内容。只需将HTML变量传递给该模板(所以,是的,正常渲染)并使用safe template filter标记它。

修改

嗯,对不起,这不是唯一的方法。你也可以创建一个接受HttpResponse并包装其内容的装饰器,或者你甚至可以为此创建一个中间件,但上面的答案似乎是最简单的。