使用继承的块变量创建URL作为Django中的参数

时间:2016-10-25 13:23:39

标签: django inheritance django-templates

我试图在Django(1.9)模板中创建一个URL,该模板将继承的块变量解析为参数。所以

href="{% url 'overview:detail' '{% block test_id %}{% endblock %}' %}"

继承自子模板的test_id,如:

{% extends 'overview/base.html' %}
{% block test_id %}{{test.id}}{% endblock %}

当我尝试执行此操作时,它会出现以下错误:

  

/ testviewer /

中的TemplateSyntaxError      

无法解析剩余部分:'' {%'来自'' {%'

如何防止这种情况?

1 个答案:

答案 0 :(得分:0)

我认为您无法做到,但我认为您只需要测试对象的详细信息页面,因此您可以为{get_absolute_url方法定义test方法。 1}}实例

def get_absolute_url(self):
    return reverse('overview:detail', args=[self.pk])

然后在您的模板中,您只需要{{ test.get_absolute_url }}