1、不拆分项目之前的写法
在上一篇Flask入门和视图中我们讲解了Flask项目的一个启动流程,引入Flask、创建Flask对象,然后由路由进入在视图函数中通过模版渲染或者json系列化的方式返回页面或者数据。我们发现这些所有的操作都是在一个页面中完成的,也就是所有功能写在python启动页面app.py中,代码如下:
# 导入Flask
from flask import Flask
# 创建Flask应用对象
app = Flask(__name__)
# 路由route + 视图函数hello_world
@app.route('/')
def hello_world():
# 响应:返回给浏览器的数据
return 'Hello World!'
if __name__ == '__main__':
# 启动服务器
app.run()
这个项目简单那就没问题,但是如果项目稍微复杂一点、有好多的功能,那这个页面就会非常的复杂也不利于开发和维护,所以我们需要对项目进行拆分,比如把视图和数据处理分开、项目模块分开。
2、项目拆分模块化的思路
在接下来的讲解中我们结合实际项目来说明,假如现在有一个项目,主要实现两个模块的功能,一个是登录(login)相关的功能,一个是主页(main)相关的功能。
我们的想法是通过一个页面来管理login相关的功能,把路由和视图函数完全写在里面,通过另一个页面来管理main相关的功能,这样的话就更好维护。
比如:
1、建项目的时候分别创建blueprints、models、static、te