【问题标题】:How to ignore a custom attribute when rendering flask render_template?渲染烧瓶render_template时如何忽略自定义属性?
【发布时间】:2021-11-29 11:49:33
【问题描述】:

我有一些 HTML 模板,例如:

<span data-test-id="fullName">{{ user.full_name }}</span>

↓ 在 dev/qa 环境中

<span data-test-id="fullName">Homer Simpson</span>

我想在生产环境中忽略自定义属性data-test-id

<span data-test-id="fullName">{{ user.full_name }}</span>

↓ 在 dev/qa 环境中

<span>Homer Simpson</span>

有可能吗?

【问题讨论】:

    标签: python html flask jinja2


    【解决方案1】:

    您可以将FLASK_ENV 值用作开关并将其作为kwarg 传递给您的render_template 调用。您需要查看Jinja2 以获得更强大的功能。

    烧瓶应用

    import os
    ...
    
    @app.route('/')
    def your_route():
        ...
        environment = os.environ.get("FLASK_ENV", 'dev')
        return render_template('your.html', environment=environment)
    

    HTML

    <span {% if environment != 'production'%} data-test-id="fullName" {% endif %}>{{ user.full_name }}</span>
    

    【讨论】:

      猜你喜欢
      • 2012-01-31
      • 1970-01-01
      • 1970-01-01
      • 2012-03-13
      • 1970-01-01
      • 1970-01-01
      • 2019-08-31
      • 2016-01-12
      • 2020-04-06
      相关资源
      最近更新 更多