在Google App Engine的(Django)模板中,有更好的方法遍历元组吗?

1 投票
2 回答
728 浏览
提问于 2025-04-16 05:49

基本上,我想做的是在Google App Engine的模板中显示os.environ的内容。我认为这个技术是基于Django模板引擎的某个版本(可能是0.96版,但如果我错了请纠正我)。

我找到了一些建议,提到你可以这样做:

{{ for key, value in environ}}

但是当我尝试这样做时,出现了一个错误,提示:

包含五个单词的'for'语句应该以'reversed'结束:for key, value in environ

我猜这个问题是关于Django的另一个版本?

顺便说一下,environ的值是在渲染模板之前设置为os.environ.items()

总之,我想出了一个可以替代的key_value_pair类:

class key_value_pair:
    def __init__(self, key, value):
        self.key = key
        self.value = value

def make_kvp(key, iter):
    return key_value_pair(key, iter[key])

make_kvp是一个小的“工厂”方法,我稍后用它来设置environ模板的值,像这样:

map(lambda x : make_kvp(x, os.environ), os.environ)

这样做的时候一切都正常,但因为我对这里使用的技术完全是新手,所以我只是想确认一下我没有忽略什么明显的更简单的解决方案。

2 个回答

0

另外,在模板中你应该这样写:

{% for x in dic %}

{% endfor %}
1

简单来说,就是用一个名字来循环整个序列,然后通过这个名字来获取每一个单独的元素。

撰写回答