在Django模板页面上,我试图访问嵌套字典中的值 .
books =
{
1: { 1: 'Alice', 2: 'Bob', 3: 'Marta' },
2: { 1: 'Alice', 3: 'Marta' },
3: { 1: 'Alice', 2: 'Bob' },
}
在我的页面的某个地方,我有这两个变量
info.id = 1
detail.id = 2
我想要做的是打印(如果存在)项目 books[1][2]
,或者换句话说 books[info.id][detail.id]
. 我遇到了麻烦,因为我无法访问这个嵌套变量 . 这得到solved here . 但是,建议的解决方案是使用点表示法访问嵌套字典项 . 但问题是这在使用变量时似乎不起作用 . 使用该逻辑,我会这样做:
{{ books.info.id.detail.id }}
但这不会产生任何结果 . 在使用变量访问字典中的项目时,我应该如何处理这种情况?请注意实际项目可能存在也可能不存在,这就是我使用 books[info.id][detail.id]
遇到麻烦的原因
1 回答
你可以't do this in the template directly. You' ll需要使用custom template tag . 这可行:
现在您可以在模板中使用它: