安装: 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)