安裝: pip3 install flask_scriptpython
flask_script做用:sql
-改變flask的啓動方式:python manage.py runserver數據庫
-自定義命令: python manage.py 自定義命令flask
示例:瀏覽器
manege.pysession
from flask_script import Manager
from flaskscript import create_app app=create_app() manager=Manager(app) @manager.command #執行命令 python manage.py custom 123 def custom(arg): """ 自定義命令 python manage.py custom 123 :param arg: :return: """ print(arg) @manager.option('-n', '--name', dest='name') @manager.option('-u', '--url', dest='url') def cmd(name, url): """ 自定義命令 執行: python manage.py cmd -n wupeiqi -u http://www.oldboyedu.com :param name: :param url: :return: """ print(name, url) if __name__=="__main__": manager.run()
安裝:pip3 install flask_sqlalchemyapp
做用:將SQLAlchemy相關的全部功能都封裝到db=flask_sqlalchemy.SQLAlchemy()對象中 - 建立表 class User(db.Model): pass - 操做表 db.session
做用:作數據庫遷移 依賴: flask-script flask-sqlalchemy Migrate(app, db) """ # 數據庫遷移命令 python manage.py db init python manage.py db migrate # makemigrations python manage.py db upgrade # migrate """ manager.add_command('db', MigrateCommand)
下載項目文件ide
Web運行時:啓動flask項目,用戶經過瀏覽器訪問url
離線腳本: 本身寫的py文件,使用flask中定義好的組件(wtforms,數據庫),不用啓動flask項目spa
詳細見falsk項目
#對url進行處理和分發 from flask import Flask from werkzeug.wsgi import DispatcherMiddleware from werkzeug.serving import run_simple app01 = Flask('app01') app02 = Flask('app02') @app01.route('/login') def login(): return 'app01.login' @app02.route('/index') def index(): return 'app02.index' # 訪問"login"--->"http://localhost:5000/login" # 訪問"index"--->"http://localhost:5000/app02/index" dm = DispatcherMiddleware(app01, { '/app02': app02, }) if __name__ == '__main__': run_simple('localhost', 5000, dm)