python - 如何使用 Python Flask 将 SQL 数据库中的日期符号格式化为 HTML 页面

标签 python flask jinja2

正在开发一个小项目,该项目使用 Python Flask 将数据库从 SQL 呈现为 HTML 页面。

尝试将日期表示法从“%y-%m-%d %H:%M”更改为“%d-%m-%y %H:%M”。

使用下面的代码:

   </tr>
{% for item in items %}
    <tr>
        <td>{{item[0]}}</td>
        <td>{{item[1]}}</td>
        <td>{{item[2]}}</td>
        <td>{{item[4].strftime("%d-%m-%y %H:%M")}}</td>
        <td>{{item[5].strftime("%d-%m-%y %H:%M")}}</td>
        <td>{{item[7].strftime("%d-%m-%y %H:%M")}}</td>
        <td>{{item[10].strftime("%d-%m-%y %H:%M")}}</td>
        <td>{{item[12].strftime("%d-%m-%y %H:%M")}}</td>
        <td>{{item[13]}}</td>
    </tr>

当我在本地主机中运行代码时,出现以下错误。

jinja2.exceptions.UndefinedError:'str object'没有属性'strftime'

尝试定义自己的过滤器,也不起作用。

希望一切顺利,谢谢。

最佳答案

您必须使用日期时间对象而不是字符串。 日期时间(2013, 10, 31, 18, 23, 29, 227),

您可以在 python 中创建自定义过滤器,例如

from datetime import datetime

def date(d):
     d =  datetime.strptime(d,"%y-%m-%d %H:%M")
     d.strftime("%d-%m-%y %H:%M")
     return d

app.add_template_filter(date)

在 jinja 中像这样使用 {{item[2] |日期}}

关于python - 如何使用 Python Flask 将 SQL 数据库中的日期符号格式化为 HTML 页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68001991/

相关文章:

Python Mysql 连接器没有获取新内容

python - flask 与应用程序混淆

docker - 为什么 Flask-Cors 在生产中没有检测到我的跨域域?

python - 使用谷歌应用程序引擎和Python,如何检查复选框是否被标记?

python - 速度 : Store aggregate values in database or calculate with Jinja?

Python:__init__ 中的继承和默认值

python - 同时从两列中减去值( Pandas , python )

python - 使用Python/Tornado的音频流充当 "radio"

python - SQLAlchemy delete() 函数刷新,但不提交,即使在调用 commit() 之后

python - 高效处理 Jinja2 异常