【发布时间】:2017-08-14 11:10:15
【问题描述】:
所以我在使用 django 模板时遇到了这个问题,我认为该解决方案可能对其他人有用:
在这里,我将假设一个非常复杂的情况,因此它也可以用于更简单的情况:
假设我们需要访问模板中的文章列表及其 id 和标题。此外,我们希望使用字典传递关于每篇文章(如出版商)的一些额外数据,因为它们不在类属性中。更难的是,当您想要两个接一个地访问这篇文章时。意味着一个 for 循环在 0 范围内迭代到最后一项的索引,并且能够同时访问项目编号 i 和 i+1。
这特别困难,因为你可能知道如果你想在 django 模板中使用字典,你不能这样做:
{{ publishers[article.id] }}
因为模板不支持 []。没什么大不了的,您可以将字段视为属性,例如
{{ publishers.0 }}
但是 django 模板不会让你这样做
{{ publishers.article.id }}
更不用说使用 for 循环和通过列表和索引访问文章了:
{{ publishers.articles.i.id }}
那我们怎么办???
【问题讨论】:
标签: python django templates dictionary for-loop