flask_4:Flask-Script Manager的用法


1、flask-script的作用

可以通過命令行的形式來操作flask。例如通過命令跑一個開發版本的服務器、設置數據庫、定時任務等。

2、flask-script的安裝

pip install flask-script
復制代碼

3、示例代碼

新建文件manage.py,文件中的代碼如下

from flask_script import Manager
from app.app import app

manager = Manager(app)

# 定義自己要執行的command @manager.command def test(): print(u'test run') if __name__ == '__main__': manager.run() 復制代碼

4、執行命令行

執行格式:python manage.py [commond]

# 執行示例中的test中的內容 python manage.py test # 啟動flask項目的命令 python manage.py runserver 復制代碼

5、引用其它文件或第三方的flask-script命令

實際使用中,我們往往可能會遇到需要引用第三方的flask-script,如flask-migrate。或者期望將一種類型的命令放置同一個文件中統一管理,這時就涉及到如何引入這些flask-script命令的問題

1. 引用其它文件中的flask-script

假設我們需要創建的是一個數據庫統一處理的命令集文件db_script.py,示例代碼如下:

from flask_script import Manager
# 注意命名,不能命名成Manager,否則會有沖突 DBManager = Manager() @DBManager.command def init(): print('數據庫初始化完成') @DBManager.command def migrate(): print '數據表遷移成功' 復制代碼

這是原來的manage.py文件中變更如下:

from flask_script import Manager
# 變更一:引入定義的命令集對象 from db_scripts import DBManager from app.app import app manager = Manager(app) # 變更二:將名利集添加到manager中 manager.add_command('db', DBManager) # 定義自己要執行的command @manager.command def test(): print(u'test run') if __name__ == '__main__': manager.run() 復制代碼

執行命令的方式有所不同:

python manage.py db init
python manage.py db migrate
復制代碼

2. 引用第三方的flask-script

和引入其它文件中的命令集的方式一樣,也是需要引入對象和添加到manager中


本文轉載自:
(1)flask 學習筆記之 Flask-Script :https://juejin.im/post/6844903617976254478
(2)Flask-Script Manager:https://www.jianshu.com/p/8148e81b42de


免責聲明!

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



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