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>

最终效果:

相关推荐
慕涯AI2 分钟前
Agent 30 课程开发指南 - 第19课
人工智能·python
妙蛙种子3113 分钟前
【Java设计模式 | 创建者模式】建造者模式
java·开发语言·后端·设计模式·建造者模式
2301_764150564 分钟前
如何用 some 检测数组中是否存在至少一个满足条件的项
jvm·数据库·python
我是无敌小恐龙10 分钟前
线下班第一课
python·考研·django·ai编程
_oP_i12 分钟前
python 之playwright 介绍
开发语言·python
zihao_tom14 分钟前
Spring 简介
java·后端·spring
@不误正业19 分钟前
大模型注意力机制源码解析-从MQA到MLA全链路演进与PyTorch实现
人工智能·pytorch·python
weixin_4087177720 分钟前
CSS如何优化大型项目样式_使用SASS预处理器提升开发效率
jvm·数据库·python
Java女侠_9年实战20 分钟前
Spring框架“惯性思维”坑——@Transactional失效场景、Bean注入循环依赖
后端
2301_8135995524 分钟前
CSS如何解决CSS引入后的样式覆盖_理解优先级原则避免重写
jvm·数据库·python