在 Django 中使用继承的块变量作为参数创建 URL
Posted
技术标签:
【中文标题】在 Django 中使用继承的块变量作为参数创建 URL【英文标题】:Create URL with a inherited block variable as argument in Django 【发布时间】:2017-03-07 13:48:22 【问题描述】:我正在尝试在 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/ 处的模板语法错误
无法解析余数:''%' from ''%'
如何预防?
【问题讨论】:
【参考方案1】:我不认为你能做到,但我假设你只想要一个测试对象的详细信息页面,所以你可以做的是为 test
实例定义 get_absolute_url
方法
def get_absolute_url(self):
return reverse('overview:detail', args=[self.pk])
那么在你的模板中你只需要 test.get_absolute_url
【讨论】:
以上是关于在 Django 中使用继承的块变量作为参数创建 URL的主要内容,如果未能解决你的问题,请参考以下文章