Moment.js 是一个简单易用的轻量级JavaScript日期处理类库,提供了日期格式化、日期解析等功能。它支持在浏览器和NodeJS两种环境中运行。此类库能够 将给定的任意日期转换成多种不同的格式,具有强大的日期计算功能,同时也内置了能显示多样的日期形式的函数。另外,它也支持多种语言,你可以任意新增一种 新的语言包。

Flask-Moment是一个集成moment.js到Jinja2模板的Flask扩展。

一.初始化Flask-Moment

from flask.ext.moment import Moment
moment = Moment(app)

Flask-Moment依赖moment.js和jquery.js。需要直接包含在HTML文档

在base.html模版中的head标签中导入moment.js和jquery.js

<html>
<head> {{ moment.include_jquery() }}
{{ moment.include_moment() }} <!--使用中文,默认是英语的-->
   {{ moment.lang("zh-CN") }}
    
</head> <body> ... </body> </html>

如果使用了bootstrap,可以不用导入jquery.js,因为bootstrap中包含了jquery.js

二.使用Flask-moment

为了使用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))

在模版中渲染,如:

<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参数可以关闭转换.

三.常用格式化参数

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 时间戳

Flask学习记录之Flask-Moment的更多相关文章

  1. [ZHUAN]Flask学习记录之Flask-SQLAlchemy

    From: http://www.cnblogs.com/agmcs/p/4445583.html 各种查询方式:http://www.360doc.com/content/12/0608/11/93 ...

  2. Flask学习记录之Flask-SQLAlchemy

    Flask-SQLAlchemy库让flask更方便的使用SQLALchemy,是一个强大的关系形数据库框架,既可以使用orm方式操作数据库,也可以使用原始的SQL命令. Flask-Migrate ...

  3. Flask学习记录之Flask-Login

    Flask-Loging 可以方便的管理用户会话,保护路由只让认证用户访问 http://flask-login.readthedocs.org/en/latest/ 一.初始化Flask-Login ...

  4. Flask学习记录之Flask-Admin

    相信用过Django框架的都不会忘记它强大的Admin功能,Flask-admin是一款能够与Django Admin所媲美的扩展,能够快速创建Web管理界面,实现了用户.文件增删改查等常用功能:也可 ...

  5. Flask学习记录之MarkDown编辑文本

    为了让网页支持markdown编辑文本,使用如下了4个库 PageDown : 在前端提供一个可以实时将markdown内容转换成html文本进行效果预览的编辑器 Flask-PageDown: 这个 ...

  6. Flask学习记录之Flask-Migrate

    一.配置Flask-Migrate from flask.ext.migrate import Migrate, MigrateCommand migrate = Migrate(app,db) #第 ...

  7. Flask学习记录之Flask-WTF

    Flask-wtf时Wtforms库的flask框架扩展,能够方便的处理Web表单 一.定义一个web表单 使用flask-wtf时,每个web表单都由一个继承自flask.ext.wtf.Form的 ...

  8. Flask学习记录之Flask-Mail

    Flask-Mail可以连接到配置中的SMTP服务器,进行邮件发送,如果没有进行SMTP服务器的配置,将会默认连接到localhost上的 一.配置及初始化 (1)flask应用配置 #配置选项 MA ...

  9. Flask学习记录之使用Werkzeug散列密码

    数据库中直接存放明文密码是很危险的,Werkzeug库中的security能够方便的实现散列密码的计算 security库中 generate_password_hash(password,metho ...

随机推荐

  1. codevs 1068 乌龟棋

    题目描述 Description 小明过生日的时候,爸爸送给他一副乌龟棋当作礼物. 乌龟棋的棋盘是一行N个格子,每个格子上一个分数(非负整数).棋盘第1格是唯一 的起点,第N格是终点,游戏要求玩家控制 ...

  2. 通过Shell和Redis来实现集群业务中日志的实时收集分析

    http://www.linuxidc.com/Linux/2013-05/83935.htm

  3. TCP 的那些事儿(转载)

    无论是PC客户端开发还是移动开发,或是Web开发, 网络编程都是很重要的一块, 深入理解TCP/IP和HTTP协议是一个优秀程序员的必备技能.看到酷壳老大正好写了篇相关文章, 正好拿来学习, 转自 h ...

  4. PERL DBI 自动重连问题

    [root@wx03 mojo]# cat relink.pl use Mojolicious::Lite; use JSON qw/encode_json decode_json/; use Enc ...

  5. sicily 4379 bicoloring

    题意:输入一个简单(无多重边和自环)的连通无向图,判断该图是否能用黑白两种颜色对顶点染色,使得每条边的两个端点为不同颜色. 解法:由于无自连通节点存在,所以只需进行一次宽搜,遍历所有的点和所有的边,判 ...

  6. [置顶] 白话二分匹配之最大匹配+附上hdu2063解题报告

    最近开始学习图论的二分匹配,关于最大匹配做一次小总结,希望自己后面回头来看一目明了,也对刚接触的人有帮助: ps:开始有的文字很多....对于很多人来说一看到文字就烦啦...不过这个总结是针对匈牙利算 ...

  7. 【KMP】Number Sequence

    KMP算法 KMP的基处题目,数字数组的KMP算法应用. 主要是next[]数组的构造,next[]存储的是字符的当前字串,与子串前字符匹配的字符数. 移动位数 = 已匹配的字符数 - 对应的部分匹配 ...

  8. javaweb笔记1之入门

    1 web应用的目录结构 web的根目录自定义 其中可以包括静态资源(html,image,css,js) |-WEB-INF(注意格式就是这样,大小写等等一模一样) |-class:存放的是字节码文 ...

  9. javascript中的变量作用域

    在网上看了一道js面试题 <script type="text/javascript"> var tt = 'aa'; function test() { alert( ...

  10. [Angular 2] *ngFor with index

    Let's see how to track index when we use 'ngFor: <li *ngFor="#hero of heros | async, #i = in ...