Moment.js 是一个简单易用的轻量级JavaScript日期处理类库,提供了日期格式化、日期解析等功能。它支持在浏览器和NodeJS两种环境中运行。此类库可以 将给定的任意日期转换成多种不一样的格式,具备强大的日期计算功能,同时也内置了能显示多样的日期形式的函数。另外,它也支持多种语言,你能够任意新增一种 新的语言包。html
Flask-Moment是一个集成moment.js
到Jinja2模板的Flask扩展。python
from flask.ext.moment import Moment moment = Moment(app)
Flask-Moment依赖moment.js和
jquery.js
。须要直接包含在HTML文档
jquery
在base.html模版中的head标签中导入moment.js和jquery.jsflask
<html> <head> {{ moment.include_jquery() }} {{ moment.include_moment() }} <!--使用中文,默认是英语的--> {{ moment.lang("zh-CN") }} </head> <body> ... </body> </html>
若是使用了bootstrap,能够不用导入jquery.js,由于bootstrap中包含了jquery.jsbootstrap
为了使用flask-moment须要传入一个时间变量渲染到模版中,如:浏览器
from flask import render_template from datetime import date @main.route('/') def index (): return render_template('index.html', time = date(1994,8,29))
在模版中渲染,如:app
<p>如今时间时: {{ moment().format('YYYY年M月D日, h:mm:ss a') }}.</p> <p>已通过去了: {{ moment().fromTime(time) }}.</p> <p>{{ moment().calendar() }}.</p>
结果函数
如今时间时: 2015年4月22日, 10:06:33 上午.
已通过去了: 21年内.
今天上午10点06.
在moment()中若是不传入python的时间变量,则默认将utc时间转换成本地时间做为显示,传入local=True参数能够关闭转换
.spa
YYYY |
2014 |
年份 |
YY |
14 |
2个字符表示的年份 |
Q |
1..4 |
季度 |
M MM |
4..04 |
月份 |
MMM MMMM |
4月..四月 |
根据moment.locale()中的设置显示月份 |
D DD |
1..31 |
一月中的第几天 |
Do |
1日..31日 |
一月中的第几天 |
DDD DDDD |
1..365 |
一年中的第几天 |
X |
1410715640.579 |
时间戳 |
x |
1410715640579 |
时间戳 |