前言: Flask-Moment在所有的flask擴展中算是相對簡單的一個了,但是還是有很多需要理解的地方.那麼今天就跟著筆者一起,來學習一下flask-moment在flask項目中的應用. 首先,我們要理解flask-moment是用來乾什麼的,摘用狗書的一段話: 有一個使用 JavaScrip ...
前言: Flask-Moment在所有的flask擴展中算是相對簡單的一個了,但是還是有很多需要理解的地方.那麼今天就跟著筆者一起,來學習一下flask-moment在flask項目中的應用.
首先,我們要理解flask-moment是用來乾什麼的,摘用狗書的一段話:
有一個使用 JavaScript 開發的優秀客戶端開源代碼庫,名為 moment.js(http://momentjs.
com/),它可以在瀏覽器中渲染日期和時間。Flask-Moment 是一個 Flask 程式擴展,能把
moment.js 集成到 Jinja2 模板中。
這段話很好理解,簡單來說就是在網頁上顯示時間.具體操作如下
一.初始化flask-moment
from flask_sqlalchemy import SQLAlchemy
moment=Moment()
二.應用flask-moment所必須的條件
{{ moment.include_moment() }}
{{ moment.include_jquery() }}
導入moment和jquery,其中如果在你的項目中應用了bootstrap,那麼就不必導入jquery了.
在兩行代碼可以放在base.html樣式中,方便其他模板繼承.
三.具體實戰
#導入from datetime import datetime
time=datetime.utcnow() #作為視圖函數的參數傳遞
<p>打開頁面時間是: {{ moment(time).format('YYYY年M月D日,H:mm:ss A,第w周') }}.</p>
<p>已過去: {{ moment(time).fromNow(refresh=True) }}</p>
如何理解呢?
moment(time).format('YYYY年M月D日,H:mm:ss A,第w周')
#獲取當前時間,並且按一定時間顯示
moment(time).fromNow(refresh=True)
#fromNow 是相對時間,意思是據上次過去了多久,當傳遞refresh=True是,會根據時間在頁面顯示過去了多久,如幾秒,幾分鐘
一開始學有疑問了,哈?YYYY年M月......這些東西是啥?沒解釋清楚啊,其實你英語好的話就很好理解了year(年).....懂了吧!
具體如下:
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 |
時間戳 |
當然moment.js還有很多方法,具體可以訪問moment.js的中文官方網站:http://momentjs.cn/