zoukankan      html  css  js  c++  java
  • Flask学习记录之Flask-Moment

    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 时间戳
  • 相关阅读:
    Some ArcGIS Tools
    Optimization Algorithms
    BPTT
    Markdown 简明语法
    【转载】softmax的log似然代价函数(求导过程)
    DP tricks and experiences
    Google Chrome Keyboard Shortcuts
    【转载】如何掌握所有的程序语言
    转 C++ 面向对象程序设计的基本特点
    leetcode 18. 4Sum
  • 原文地址:https://www.cnblogs.com/agmcs/p/4446589.html
Copyright © 2011-2022 走看看