在使用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略。
原创文章,作者:奋斗,如若转载,请注明出处:https://blog.ytso.com/tech/pnotes/7579.html