python3使用蓝本Blueprint 博客分类: PythonFlask
程序员文章站
2024-02-04 23:27:52
...
在使用flask进行一个项目编写的时候,可能会有许多个模块,很不方便管理维护,flask中便有了blueprint的概念。可以分别定义模块的视图、模板、视图等等,我们可以使用blueprint进行不同模块的编写,不同模块之间有着不同的静态文件、模板文件、view文件,十分方便代码的维护和管理。
目录结构如图:
run.py代码如下:
from flask import Flask from flask import render_template app = Flask(__name__) from routes_mod.user import * from routes_mod.mobile import * app.register_blueprint(user,url_prefix='/user') app.register_blueprint(mobile,url_prefix='/mobile') @app.route('/') def hello_world(): return render_template('index.html') if __name__ == '__main__': # app.run(host='127.0.0.1', port=8888, debug=True) app.run(port=8888, debug=True)
user.py代码如下:
# -*- coding:utf-8 -*- __author__ = '三天', __time__ = '2018/5/28 下午10:01', version = '', from flask import Blueprint,render_template user=Blueprint('user',__name__) @user.route('/userinfo') def userinfo(): return render_template("user.html")
mobile.py代码如下:
# -*- coding:utf-8 -*- __author__ = '三天', __time__ = '2018/5/28 下午10:01', version = '', from flask import Blueprint,render_template mobile=Blueprint('mobile',__name__) @mobile.route('/mobileinfo') def mobileinfo(): return render_template("mobile.html")
index.html代码如下:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>主页</title> </head> <body> <a href="/user/userinfo">用户信息</a> <a href="/mobile/mobileinfo">移动设备</a> </body> </html>
user.html和mobile.html略。