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>

最终效果:

相关推荐
武子康几秒前
大数据-170 Elasticsearch 7.3.0 三节点集群实战:目录/参数/启动到联机
大数据·后端·elasticsearch
稚辉君.MCA_P8_Java1 分钟前
DeepSeek Java 多线程打印的12种实现方法
java·linux·后端·架构·maven
w***488212 分钟前
Springboot 3项目整合Knife4j接口文档(接口分组详细教程)
java·spring boot·后端
风华浪浪14 分钟前
python 基础之 jsonpatch 用于对 JSON 文档的局部更新操作
linux·python·json
k***459914 分钟前
SpringBoot【实用篇】- 测试
java·spring boot·后端
FeiHuo5651515 分钟前
微信个人号API二次开发:如何提高开发效率和质量
java·开发语言·python·php
wsj__WSJ18 分钟前
Python 项目管理工具 uv 详解
python·conda·virtualenv
hellotutu18 分钟前
vue2+springboot通过 FormData 手动封装图片数据上传
java·vue.js·spring boot·后端·ui
张人大 Renda Zhang26 分钟前
Maven = Java 构建世界的“事实标准”:从 pom.xml 到云原生 CI/CD
xml·java·spring boot·后端·ci/cd·云原生·maven
i***l92027 分钟前
使用 Spring Boot 实现图片上传
spring boot·后端·状态模式