使用 python2.7,如何在遍历 returns jinja2 模板中的字典的函数时获取键值项

using python2.7, how to obtain key, value items when iterating over a function that returns a dictionary in jinja2 templating

我花了一段时间寻找如何做到这一点。 我有一个函数可以在 python2.7 中创建和 returns 字典,如下所示

function():
    my_dict = {"foo":"bar", "foo2":"bar2" } #and so on
    return my_dict

我的模板设置如下:

 {% for key, value in function.items() %}

                    <div class="{{ key }}">
                            <a href="{{ value }}"></a>
                    </div>
{% endfor %}

我不断收到错误消息“UndefinedError: 'function object' 没有属性 'items' 并尝试了 iteritems() 当我删除项目和 iteritems 以在模板中使用我的 for 循环时,如下所示:

{% for key, value in function() %}

出现以下错误: ValueError:要解压的值太多

如何在 jinja2 中正确地迭代我的函数?

最后,这是有效的:

{% for key, value in function().items() %}
                <div class="{{ key }}">
                    <a href="{{ value }}"></a>
                </div>
{% endfor %}