返回顶部

Flask 蓝图与CBV

Flask蓝图 Blueprint

  • Blueprint,类似普通的Flask实例,不能被run的Flask实例,不存在config
  1. 创建蓝图bp_users.py文件,名字可以更改

    from flask import Blueprint
    
    bp = Blueprint('bp01', __name__,url_prefix='url前缀')  # 'bp01'第一个参数是唯一标识,整个环境不能重复!  url_prefix='url前缀',当存在多个蓝图url冲突时,在地址栏输入'url前缀',就可以访问指定的蓝图文件
    
    
    @bp.route('/user',endpoint='user')
    def user():
        return '我是蓝图函数01'
    
  2. 建立关系

    # 在项目的app.run文件中
    from app01 import bp  #导入蓝图
    app.register_blueprint(bp) # 注册蓝图
    
  3. 访问指定路径

    • 在蓝图中反向解析时,需要注意书写格式:

      url = url_for('蓝图标识.装饰器别名')
      

1.11CBV

  • 基本格式

    from flask import view,Flask
    app = Flask(__name__)
    
    class Login(views.MethodView):    #继承MethodView,使类变成视图函数
        def get(self,*args,**kwargs):
            pass
        def post(self,*args,**kwargs):
            pass
    app.add.url_rule('/login',
                    endpoint='login',  # 如果endpoint不定义的话名称就是view_func的name,必须唯一
                    view_func=Login.as_view(name='loginlogin'),  # name就是就是view_func的名称
                    )    
        
    app.run()
    

posted @   高薪程序员  阅读(247)  评论(0编辑  收藏  举报
编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· AI与.NET技术实操系列(六):基于图像分类模型对图像进行分类
点击右上角即可分享
微信分享提示

目录导航