Flask 入门7:使用 Flask-Moment 本地化日期和时间

如果Web应用的用户来自世界各地,那么处理日期和时间可不是一个简单的任务。服务器需要统一时间单位,这和用户所在的地理位置无关,所以一般使用协调世界时(UTC)。不过用户看到 UTC 格式的时间会感到困惑,他们更希望看到当地时间,而且采用当地惯用的格式。

要想在服务器上只使用UTC时间,一个优雅的解决方案是,把时间单位发送给Web浏览器,转换成当地时间,然后用JavaScript渲染。Web浏览器可以更好地完成这一任务,因为它能获取用户计算机中的时区和区域设置。

初始化Flask-Moment:

python 复制代码
from flask_moment import Moment 
moment = Moment(app)

引入 Moment.js 库:

html 复制代码
{% block scripts %} 
{{ super() }} 
{{ moment.include_moment() }} 
{% endblock %}

添加一个datetime变量:

python 复制代码
from datetime import datetime 
@app.route('/') 
def index(): 
    return render_template('index.html', 
                           current_time=datetime.utcnow())

使用 Flask-Moment 渲染时间戳:

html 复制代码
<p>The local date and time is {{ moment(current_time).format('LLL') }}.</p>
<p>That was {{ moment(current_time).fromNow(refresh=True) }}</p>

最终效果:

相关推荐
小刘在重生~4 分钟前
Java 异常体系完整笔记
java·笔记·python
用户8356290780516 分钟前
使用 Python 为 PDF 添加和管理超链接
后端·python
抠脚小弟7 分钟前
Spring Task 定时任务详解:从入门到实战
java·后端·spring
千千寰宇8 分钟前
[Python/测试] pytest:简洁、可扩展的 Python 测试框架
python·软件质量保障与测试
少陽君9 分钟前
Python 并发编程:IO 等待用线程/asyncio,CPU 计算才用进程
数据库·python·php
n8n17 分钟前
Spring AI 对话记忆深度实践:无状态本质、ChatMemory 抽象、上下文管理与会话隔离
后端
2601_9622845025 分钟前
Python 和Java 哪个更适合做自动化测试?
java·自动化测试·python·接口测试·性能测试
liliangcsdn29 分钟前
因子权重矩阵处理-滞回缓冲带+降频稳定化动态重选
开发语言·python·算法
ShuiShenHuoLe30 分钟前
golang-jwt v5 入门
开发语言·后端·golang
码事漫谈33 分钟前
DeepSeek V4.1 Flash:一次把自家旗舰送走的发布
后端