亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

flask-script模塊的具體使用

 更新時(shí)間:2021年11月03日 11:10:36   作者:trnx  
本文主要介紹了flask-script模塊的具體使用,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

1 作用

通過(guò) flask-script 可以以命令的形式,執(zhí)行 flask 語(yǔ)句。

提供向 Flask 插入外部腳本的功能,如 運(yùn)行一個(gè)開(kāi)發(fā)服務(wù)器、運(yùn)行 shell、執(zhí)行數(shù)據(jù)庫(kù)腳本。

2 安裝

pip install flask-script

3 所有要運(yùn)行的命令都放在 manager.py 中

from flask import Flask
from flask_script import Manager, Command
from loguru import logger
 
# [ 生成一個(gè) Flask 實(shí)例 ]
app = Flask(__name__)  
 
# [ Manager 構(gòu)造方法,只接受一個(gè)參數(shù),
# 就是 Flask 實(shí)例,Manager 負(fù)責(zé)追蹤整個(gè) 命令 的處理過(guò)程 ]
manager = Manager(app)  

4 三種方式 創(chuàng)建命令

4.1 方式一 創(chuàng)建 Command子類(lèi)

# 定義要執(zhí)行的命令類(lèi)型 Hello 繼承 Command
class Hello(Command):
    # 重寫(xiě) Command 類(lèi)的 run() 方法
    def run(self):  
        ''' 要執(zhí)行的命令 '''
        logger.info('sub class of Command')  
 
if __name__ == '__main__':
    '''
    將 hello 命令加入到 manager ,
    第一個(gè)參數(shù)為自己起的的命令簡(jiǎn)稱(chēng),
    第二個(gè)參數(shù)為 Command 子類(lèi) Hello 的實(shí)例
    '''
    manager.add_command('hello', Hello())  
    manager.run()

在 cmd 執(zhí)行 python manager.py hello [ hello 就是自己的 命令的簡(jiǎn)稱(chēng) ]

這樣就會(huì)打印出 sub class of Command

4.2 方式二 使用裝飾器 @manager.command

'''
@manager.command 其實(shí) manager 就是上面初始化出來(lái)的 Manager 類(lèi)的實(shí)例,
如果 Manager 類(lèi)的實(shí)例名稱(chēng)為 manager_1 ,則裝飾器也要改成 @manager_1.command
'''
 
 
'''
使用 裝飾器 @manager.command 后,命令的簡(jiǎn)稱(chēng)就是 函數(shù)的名字 hello_command,
在 __main__ 中 就不需要 在 通過(guò) manager.add_command() 將 命令簡(jiǎn)稱(chēng)加入到 command 實(shí)例中了
'''
@manager.command
def hello_command(): 
    logger.info('@manager.command')
 
if __name__ == '__main__':
    '''
    在 __main__ 中 就不需要 在 通過(guò) manager.add_command() 將 命令簡(jiǎn)稱(chēng)加入到 command 實(shí)例中了
    '''
    manager.run()  

在 cmd 執(zhí)行 python manager.py hello_command [ hello_command 就是自己的 命令的簡(jiǎn)稱(chēng) ]

這樣就會(huì)打印出 @manager.command

4.3 方式三 使用裝飾器 @manager.option

'''
-u 為命令參數(shù)的 簡(jiǎn)寫(xiě),--username 為命令參數(shù)的 全稱(chēng)
(類(lèi)似于 Linux 命令的參數(shù),參數(shù)簡(jiǎn)寫(xiě) 為一個(gè) -,參數(shù)全稱(chēng)為 -- ),
無(wú)論是參數(shù)的 簡(jiǎn)寫(xiě)、還是 全稱(chēng) 都必須以 - 開(kāi)頭,但是 全稱(chēng)也可以只以 一個(gè) - 開(kāi)頭,
但建議以 兩個(gè) - 開(kāi)頭,因?yàn)楦暇幋a規(guī)范,dest 的值必須與 hello_option 函數(shù)(也就是命令)的 入?yún)⒚?
稱(chēng) 完全相同,因?yàn)?dest 就是表示這個(gè)參數(shù)值,傳遞給 hello_option 命令函數(shù)的那個(gè)入?yún)⒌?;default 表示
參數(shù)的默認(rèn)值,也就是如果執(zhí)行 python manager.py hello_option 執(zhí)行命令時(shí),不帶參數(shù),就用參數(shù)的默認(rèn)
值
'''
@manager.option('-u', '--username', dest='username', default='zhangsan')  
@manager.option('-p', '--password', dest='password', default='123456')
def hello_option(username, password):
    logger.info('@manage.option')
    logger.info(f'username = {username}, password = {password}')
 
if __name__ == '__main__':
    '''
    在 __main__ 中 就不需要 在 通過(guò) manager.add_command() 將 命令簡(jiǎn)稱(chēng)加入到 command 實(shí)例中了
    '''

到此這篇關(guān)于flask-script模塊的具體使用的文章就介紹到這了,更多相關(guān)flask-script模塊內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • python 將md5轉(zhuǎn)為16字節(jié)的方法

    python 將md5轉(zhuǎn)為16字節(jié)的方法

    今天小編就為大家分享一篇python 將md5轉(zhuǎn)為16字節(jié)的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-05-05
  • Python 兩個(gè)列表的差集、并集和交集實(shí)現(xiàn)代碼

    Python 兩個(gè)列表的差集、并集和交集實(shí)現(xiàn)代碼

    這篇文章主要介紹了Python 兩個(gè)列表的差集、并集和交集實(shí)現(xiàn)代碼,需要的朋友可以參考下
    2016-09-09
  • np.newaxis()函數(shù)的具體使用

    np.newaxis()函數(shù)的具體使用

    本文主要介紹了np.newaxis()函數(shù)的具體使用,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-03-03
  • 詳解Python匹配多行文本塊的正則表達(dá)式

    詳解Python匹配多行文本塊的正則表達(dá)式

    這篇文章主要介紹了Python?匹配多行文本塊的正則表達(dá)式,該解決方案折衷了已知和未知模式的幾種方法,并解釋了匹配模式的工作原理,本文給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2023-06-06
  • Empty test suite.(PyCharm程序運(yùn)行錯(cuò)誤的解決方法)

    Empty test suite.(PyCharm程序運(yùn)行錯(cuò)誤的解決方法)

    今天小編就為大家分享一篇Empty test suite.(PyCharm程序運(yùn)行錯(cuò)誤的解決方法),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-11-11
  • python使用Berkeley DB數(shù)據(jù)庫(kù)實(shí)例

    python使用Berkeley DB數(shù)據(jù)庫(kù)實(shí)例

    這篇文章主要介紹了python使用Berkeley DB數(shù)據(jù)庫(kù)的方法,以實(shí)例形式講述了完整的操作過(guò)程,并總結(jié)了具體的操作步驟,非常具有實(shí)用性,需要的朋友可以參考下
    2014-09-09
  • Python?隊(duì)列Queue和PriorityQueue解析

    Python?隊(duì)列Queue和PriorityQueue解析

    這篇文章主要介紹了Python?隊(duì)列Queue和PriorityQueue,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-09-09
  • Python使用pyexecjs代碼案例解析

    Python使用pyexecjs代碼案例解析

    這篇文章主要介紹了Python使用pyexecjs代碼實(shí)例解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-07-07
  • python高階函數(shù)functools模塊的具體使用

    python高階函數(shù)functools模塊的具體使用

    本文主要介紹了python高階函數(shù)functools模塊的具體使用,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-03-03
  • 詳解Python生成器和基于生成器的協(xié)程

    詳解Python生成器和基于生成器的協(xié)程

    說(shuō)到Python協(xié)程就會(huì)想到,進(jìn)程和線(xiàn)程,當(dāng)然更離不開(kāi)生成器.今天就給大家整理了本篇文章,文中有非常詳細(xì)的介紹,需要的朋友可以參考下
    2021-06-06

最新評(píng)論