Flask框架(一)——项目拆分

文章讲述了在Flask框架中进行项目拆分的原因和步骤,包括新建文件夹和文件、编写__init__.py以创建和注册蓝图、在views.py中编写路由和视图,以及修改app.py。这样做能更好地管理和组织代码,尤其在处理大型项目时。
摘要由CSDN通过智能技术生成

目录

前言

一、为什么要进行项目拆分?

二、项目拆分步骤

1.新建文件夹和文件

2.编写__init__.py文件

3、 编写views.py文件

4、修改app.py文件

总结


一、为什么要进行项目拆分?

        由于之前的项目比较简单,路由和视图函数都比较少,并没有觉得哪里不适合。如果后期开发相对大型一点的项目,会使用到大量的路由和视图,如果不进行项目拆分,就不好管理,因此需要对项目进行拆分。

二、项目拆分步骤

1.新建文件夹和文件

  •  在项目根目录下建立App应用
  • 在App文件夹中,将原来根目录下的templates,static文件移入App应用中
  • 在App文件夹中,新建views.py文件,用来编写路由和视图
  • 在App文件夹中,新建__init__.py文件,是初始化文件,用来创建Flask对象
  • 在App文件夹中,新建models.py文件,用来编写数据模型

    最终的结构如下:

2.编写__init__.py文件

        将原先app.py中的创建app的内容写在__init__.py文件中,但是需要稍微修改一下,定义一个create_app() 的函数 ,返回一个app对象,其作用是创建app,因此在app.py文件中只需调用该函数进行创建app对象即可。create_app()函数中还需使用app.register_blueprint(blueprint=blue)注册蓝图,与views.py 中的蓝图进行绑定。

代码如下:

# __init__.py:是初始化文件,创建Flask应用

from flask import Flask

from .views import blue

# 创建app

def create_app():

    app = Flask(__name__)

    # 注册蓝图

    app.register_blueprint(blueprint=blue)

    return app

3、 编写views.py文件

        views.py是编写路由和视图的文件,就是将原先app.py文件中的路由和视图板块移到此处。在编写路由时需使用到app对象,但是又不可以再次创建一个新的app,对象就不一样了。因此需要引入蓝图,通过蓝图代替app对象。首先需要导入flask中的Blueprint类,然后进行蓝图创建,其中有两参数:蓝图的名称、__name__,作用如下:

  • user:蓝图的名称,自己定义的,反向解析的时候需要用到
  • __name__:表示当前模块

代码如下:

from flask import Blueprint

# 蓝图

blue = Blueprint('user', __name__)

# user:蓝图的名称,自己定义的,反向解析的时候需要用到

# __name__:表示当前模块

@blue.route('/')

def index():

    return 'infdex'

4、修改app.py文件

app.py文件就只有通过create_app()函数创建app,以及运行项目中两部分了。

代码如下: 

from App import create_app #比较特殊,直接导入函数

#创建一个app

app=create_app()

if __name__=='__main__':

    app.run(debug=True)


总结

以上就是今天所学内容,本文主要介绍了Flask项目的拆分,以便我们更好的管理代码。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

m0_7Ella

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值