from werkzeug.wsgi import dispatcherMIDdlewarefrom werkzeug.serving import run_simplefrom flask import Flask,current_appapp1 = Flask('app01')app2 = Flask('app02')@app1.route('/index')def index(): return "app01"@app2.route('/index2')def index2(): return "app2"# http://localhost:5000/index# http:/localhost:5000/sec/index2dm = dispatcherMIDdleware(app1,{ '/sec': app2,})if __name__ == "__main__": run_simple('localhost',5000,dm)
二.flask-admin安装pip3 install flask_admin
简单使用from flask import Flaskfrom flask_admin import adminapp = Flask(__name__)#将app注册到adminzhong admin = admin(app)if __name__=="mian": app.run()#访问#127.0.0.1:5000/admin端口,会得到一个空白的页面
将表模型注册到admin中#在将表注册之前应该对app进行配置sqlALCHEMY_DATABASE_URI = "MysqL+pyMysqL://root:@127.0.0.1:3307/py9API?charset=utf8mb4"sqlALCHEMY_POol_SIZE = 5sqlALCHEMY_POol_TIMEOUT = 30sqlALCHEMY_POol_RECYCLE = -1#导入models文件的中的表模型from flask_admin.contrib.sqla import ModelVIEwfrom API.models import Stock,Product,Images,category,Wxuser,Banneradmin.add_vIEw(ModelVIEw(Stock,db.session))admin.add_vIEw(ModelVIEw(Product,db.session))admin.add_vIEw(ModelVIEw(category,db.session))
如果有个字段是图片指端#配置上传文件的路径#导入from flask_admin.contrib.fileadmin import fileadminfrom flask_admin.contrib.fileadmin import fileadmin,formfile_path = op.join(op.dirname(__file__),'static')admin = admin(app)admin.add_vIEw(fileadmin(file_path,'/static/',name='文件'))#如果有个字段要是上传文件重写该方法的modleVIEw类,假设imgae_url是文件图片的字段class ImagesVIEw(ModelVIEw): form_extra_fIElds = { 'image_url': form.ImageUploadFIEld('Image',base_path=file_path,relative_path='uploadfile/' ) }admin.add_vIEw(ImagesVIEw(Images,db.session))
总结 以上是内存溢出为你收集整理的Flask中多APP应用以及admin后台系统全部内容,希望文章能够帮你解决Flask中多APP应用以及admin后台系统所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)