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>

最终效果:

相关推荐
ydmy几秒前
注意力机制(个人理解)
pytorch·python·深度学习
Rust研习社3 分钟前
使用 Axum 构建高性能异步 Web 服务
开发语言·前端·网络·后端·http·rust
0xDevNull15 分钟前
Spring Boot 自动装配:从原理到实践
java·spring boot·后端
IT_陈寒1 小时前
SpringBoot配置加载顺序把我坑惨了
前端·人工智能·后端
Moment1 小时前
面试官:给 llm 传递上下文,有哪几个身份 role ❓❓❓
前端·后端·面试
snakeshe10101 小时前
SpringBoot 多人协作平台实战(5):从零开始集成 MyBatis ORM 连接 MySQL 数据库
后端
iwhitney1 小时前
【次方量化】3分钟搞懂什么是量化策略
python
高洁011 小时前
大模型部署资源不足?轻量化部署解决方案
python·深度学习·机器学习·数据挖掘·transformer
SamDeepThinking2 小时前
中小团队需要一个资源微服务
后端·微服务·架构
阿里云大数据AI技术2 小时前
MaxFrame 视频帧智能分析:从视频到语义向量的端到端分布式处理
人工智能·python