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>

最终效果:

相关推荐
开飞机的舒克_7 小时前
FastAPI 实战入门:从路由、参数校验到依赖注入的后端开发指南
python·fastapi
Oneslide7 小时前
systemd-journald 使用与配置指南
后端
神奇小汤圆7 小时前
30分钟实现自己的AI聊天机器人(SpringBoot接入DeepSeek API)
后端
霸道流氓气质7 小时前
Kiro 中反编译 JAR 包并分析字节码的流程指南
chrome·python·jar
再吃一根胡萝卜7 小时前
从最左前缀到地址索引:我对 MySQL 索引的一次完整复盘
后端
郡杰7 小时前
Spring Boot 请求流转与 RESTful
后端
人工智能时代 准备好了吗7 小时前
AI回答内容进入率监测:引用识别、文本匹配与语义判断
开发语言·人工智能·python
再吃一根胡萝卜8 小时前
Redis 都有哪些用处?都会用在什么地方?
后端
再吃一根胡萝卜8 小时前
分布式与分布式锁:从访问量到数据一致性
后端
再吃一根胡萝卜8 小时前
分库分表:为什么我不建议一上来就分表
后端