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 時間戳


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM