如何使用jinja2插入当前日期

如何使用jinja2插入当前日期,jinja2,Jinja2,我不熟悉使用Jinja2,并尝试在文档中插入当前日期作为底线,以告知用户文档是何时生成的 我目前的解决办法是 于{utils.today | date('%x')}生成 没有错误消息,但不会生成任何内容 解决方案只需要是Jinja2,因为我没有运行python进程——使用Ginger(一个Haskell程序)处理模板。可以在呈现模板之前将值注入模板 在app.py中: import datetime @app.context_processor def inject_today_date(

我不熟悉使用Jinja2,并尝试在文档中插入当前日期作为底线,以告知用户文档是何时生成的

我目前的解决办法是


于{utils.today | date('%x')}生成
没有错误消息,但不会生成任何内容

解决方案只需要是Jinja2,因为我没有运行python进程——使用Ginger(一个Haskell程序)处理模板。

可以在呈现模板之前将值注入模板

在app.py中:

import datetime

@app.context_processor
def inject_today_date():
    return {'today_date': datetime.date.today()}
并将其添加到html文件中:

<p>{{today_date}}</p>
{{今天{u日期}


输出:
2019-01-07

Jinja2没有插入日期的本机支持。但是,您可以在用于渲染模板的任何库中轻松准备日期,并将值传递给渲染函数

在Python中使用jinja2:

import datetime
date = datetime.date.today()
template = Template('Produced on {{ date }}')
template.render(date=date)
如果您使用的是Ginger,那么您将拥有相同的模板,只需确保在Haskell中创建日期并使用该值呈现模板即可

您还可以编写或安装一个jinja2扩展,该扩展将使用于处理模板中日期的实用程序可用

例如,安装[1]后,您的模板将如下所示:

Produced on {% now 'local' %}

[1] :未经测试的代码

谢谢您的建议。不幸的是,我只需要Jinja2中的解决方案,我使用Haskell中的替换过程(使用Ginger),并且没有运行python代码。很抱歉,我在原来的问题中没有提到这一点,我现在已经把这个问题提出来澄清了。这个问题与烧瓶没有任何关系,尽管你在回答中的想法是正确的。