2

我正在使用 django (1.4) 开发我的网站。我无法通过其名称获取块(以便对其进行编辑)。

在从我的基本模板继承的每个模板中,我都分配了一个字符串块名。我想将一些文本放在一个特定的块中(在扩展模板中定义),其名称等于变量blockname的内容。

编辑:

例子

base.html

{% block b1 %}no changes{% endblock %}
{% block b2 %}no changes{% endblock %}
{% block b3 %}no changes{% endblock %}

子页面.html

???

用这样的视图显示subpage.html

def show_subpage(request):
    t = loader.get_template('subpage.html')
    c = RequestContext(request, {'blockname': 'b2'})
    return HttpResponse(t.render(c))

应该有如下结果:

没有变化 CHANGE 没有变化

我怎样才能做到这一点?

4

1 回答 1

0

如果我理解你的正确,那么这就是你想要的......

def show_subpage(request):
    t = loader.get_template('subpage.html')
    c = RequestContext(request, {'blockname': ' Change '})
    return HttpResponse(t.render(c))

子页面.html

{% extends 'base.html' %}

{% block b2%}{{ blockname }}{% endblock %}
于 2012-12-23T04:51:05.350 回答