【Flask微电影】02.使用蓝图构建项目目录
2018-10-28 本文已影响38人
吾星喵
蓝图构建项目目录
什么是蓝图
一个应用中或者跨应用制作应用组件和支持通用的模式
蓝图的作用
- 将不同的功能模块化
- 构建大型应用
- 优化项目结构
- 增强可读性、易于维护
构建方法·定义注册调用
- 定义蓝图(
app/admin/__init__.py
)
from flask import Blueprint
admin = Blueprint("admin", __name__)
import views
- 注册蓝图(
app/__init__.py
)
from admin import admin as admin_blueprint
app.register_blueprint(admin_blueprint, url_prefix="/admin")
- 调用蓝图(
app/admin/views.py
)
from . import admin
@admin.route("/")
开始创建项目
定义蓝图
app/home/__init__.py
from flask import Blueprint
home = Blueprint('home', __name__)
import app.home.views
app/admin/__init__.py
from flask import Blueprint
admin = Blueprint('admin', __name__)
import app.admin.views
调用蓝图
定义视图
app/home/views.py
from . import home
@home.route("/")
def index():
return "<h1 style='color:blue'>前台</h1>"
app/admin/views.py
from . import admin
@admin.route("/")
def index():
return "<h1 style='color:red'>后台</h1>"
注册蓝图
app/__init__.py
from flask import Flask
app = Flask(__name__) # 实例化flask
app.debug = True # 开启调试模式
from app.home import home as home_blueprint # 导入
from app.admin import admin as admin_blueprint
app.register_blueprint(home_blueprint)
app.register_blueprint(admin_blueprint, url_prefix="/admin")
运行服务
编写入口脚本,使整个项目启动起来
manage.py
from app import app
if __name__ == '__main__':
app.run()
然后运行run manage.py
启动服务
访问 http://127.0.0.1:5000/ 即可看到前台的蓝色
访问 http://127.0.0.1:5000/admin/ 即可看到后台的红色
现在访问后台就是以 /admin
为前缀,拼接后台视图里面的url,来构成整个链接。