您的当前位置:首页正文

Flask Jinja2踩坑

来源:图艺博知识网
  1. 遍历多重字典时,不能使用索引来取值。
    Jinja2模板中代码段:
    <div class="dropdown-menu" aria-labelledby="dropdownMenuButton">
        {% for theme_name, display_name in config['BLUELOG THEMES'].items() %}
        <a class="dropdown-item" href="{{ url_for('blog.change_theme',theme_name=theme_name,next=request.full_path) }}">
            {{ display_name }}
        </a>
        {% endfor %}
    </div>

运行项目时会报错:

jinja2.exceptions.UndefinedError: 'flask.config.Config object' has no attribute 'BLUELOG THEMES'
config是Flask内置的模板上下文变量,控制台打印下config,如下:

搞不懂为什么会出现上面这种错误,后面偶然发现把取值的写法换一下,就可以了。。。

 {% for theme_name, display_name in config.BLUELOG_THEMES.items() %}

【To be continue...】

Top