flask的蓝图设计

flask的蓝图

蓝图的作用以及结构(结构的目录需要自己定义)

蓝图的作用:规范文件的目录(可以实现多个app,如admin的APP,user的APP)
比如:
    -proj_flask
        -proj_flask
            _admin
                -static
                -templates
                -__init__.py
                -views.py
            -user
                -static
                -templates
                -__init__.py
                -views.py
                    -user.py
                    -blog.py
            -__init__.py
            -run.py               

        

启动文件run.py

# 启动文件
from pro_flask import app

if __name__ == '__main__':
    app.run()

user.py

#!/usr/bin/env python
# -*- coding:utf-8 -*-
from flask import Blueprint

user = Blueprint('us', __name__)# 申请一个蓝图,'user'表示当前user文件的蓝图,
# __name__表示当前的启动文件

# 给当前所在的蓝图添加
@user.before_request
def befor1():
    print("我是us的befor1")

@user.route("/user")
def index():
    return "ok"

blog.py

#!/usr/bin/env python
# -*- coding:utf-8 -*-
from flask import Blueprint,url_for

blog = Blueprint('blog', __name__)# 申请一个蓝图,'blog'表示当前blog文件的蓝图,
# __name__表示当前的启动文件

# 给当前所在的蓝图添加
@blog.before_request
def befor1():
    print("我是blog的befor1")

@blog.route("/blog")
def index():
    print(url_for("us.index"))
    return "blog"

proj_flask/init.py

#!/usr/bin/env python
# -*- coding:utf-8 -*-
from flask import Flask

app = Flask(__name__,template_folder='templates',static_folder='statics',static_url_path='/static')

from .views.account import account
from .views.blog import blog
from .views.user import user

# 给所有的蓝图添加
@app.before_request
def befor1():
    print("我是app的before_request")

# 注册蓝图
app.register_blueprint(account)
app.register_blueprint(blog)
app.register_blueprint(user)

原文地址:https://www.cnblogs.com/yafeng666/p/12527071.html

时间: 2024-08-30 14:48:46

flask的蓝图设计的相关文章

IT之路(1):flask之蓝图

flask蓝图设计基于可以按照功能划分,或者模块划分以实现代码的解构,便于管理及维护. 项目解构主要分为: application ---apps -- 项目的主要模块,模块内置数据库文件models.py,视图文件views.py,模板文件夹templates(前后端不分离) ---settings -- flask的项目配置信息 ---static -- 静态文件 ---utils -- 工具函数 ---lib -- 第三方库 docs -- 文件 logs -- 日志 manage.py

flask多蓝图模板目录冲突解决

一.环境 Flask==0.10.1 Werkzeug==0.10.4 Jinja2==2.8 二.问题 1.蓝图架构 --app |-user |-static |-templates |-index.html |-views.py |-__init_.py |-box |-static |-templates |-index.html |-views.py |-__init_.py |-__init__.py 2.问题重现 user和box是两个蓝图,全部注册在app项目中 如果在user的

Flask blueprint蓝图按功能模块化架构实例

使用flask作为开发框架,一定要按功能模块化,否则到了后面项目越大,开发速度就越慢. 1.Flask模块化结构规划 [[email protected] yangyun]# tree . ├── asset               #资产功能目录 │   ├── __init__.py │   ├── models.py        #资产数据库结构文件 │   └── views.py         #资产视图文件 ├── user                #用户功能目录 │ 

Flask的蓝图和红图

1.蓝图 对于简单的项目来说,比如项目就只有一个user模块,我们可以都将视图函数定义在一个文件里面,不需要用到蓝图. 但是如果我们的项目有多个模块,如下有v1模块,v2模块.....等,那么如果我们将这么多的模块的视图文件都杂在一个文件中去写的话,就会导致管理非常不便: 如多人开发不同模块,会导致业务代码经常出现冲突,或者我们要弃用某个功能模块的话,需要去文件中找到所有的相关功能代码并一一删除...... 这样子做虽然没错,但是非常不符合pythonic的优雅,简洁的特性. 根据pythoni

【Flask】蓝图

蓝图应用 在Flask中的蓝图 blueprint其实本质上就是将应用解耦,不同的应用分别放在不同的文件内 蓝图一 from flask import Blueprint,render_template user = Blueprint("user",__name__,template_folder="tmp") # 参数user表示蓝图唯一标识不能重复,实例化一个蓝图(Blueprint)对象 @user.route("/user",metho

flask之蓝图系统

蓝图 对程序进行目录结构划分 不使用蓝图,自己分文件 目录结构: -templates -views -__init__.py -user.py -order.py -app.py app.py from views import app if __name__ == '__main__': app.run() init.py from flask import Flask,request app = Flask(__name__) #不导入这个不行 from . import account

flask的蓝图

蓝图 文件目录实现 app就是 flask的主入口 (比如做一个排插 3个插孔) 蓝图就是(转接排插,让更多的插头可以插到app排插上)  把蓝图比做开发页面模块 放页面代码 视图函数.模版.静态文件 (就是电器) book.py视图(电器) app.py 代码(排插) 原文地址:https://www.cnblogs.com/kaibindirver/p/12631608.html

flask的蓝图(blueprint)

第一步 第二步 第三步 第四步 原文地址:https://www.cnblogs.com/lilied/p/8424137.html

flask路由规划蓝图和route

引言: 在写任何web项目的时候路由的配置永远都是不可或缺的,如django中的include方法flask中的Blueprint这些都是用于将多个application中的路由区别开来,如果你要使用restful风格,那么这种路由一定是必须做的,很多教程在编写代码会在每一个视图函数上面写清楚完整的路径,包括请求的参数.以及请求的方法,其实就是为了达到这样的目的 在flask中当一个庞大的系统中有很多小模块,在分配路由的时候怎么处理呢?全部都堆到一个py程序中,调用@app.route? 显然这