flask 蓝图总结

薛蟠
• 阅读 3939

1、介绍

蓝图在官网的介绍如下:
Flask 中的蓝图为这些情况设计:

  • 把一个应用分解为一个蓝图的集合。这对大型应用是理想的。一个项目可以实例化一个应用对象,初始化几个扩展,并注册一集合的蓝图。
  • 以 URL 前缀和/或子域名,在应用上注册一个蓝图。 URL 前缀/子域名中的参数即成为这个蓝图下的所有视图函数的共同的视图参数(默认情况下)。
  • 在一个应用中用不同的 URL 规则多次注册一个蓝图。
  • 通过蓝图提供模板过滤器、静态文件、模板和其它功能。一个蓝图不一定要实现应用或者视图函数。
  • 初始化一个 Flask 扩展时,在这些情况中注册一个蓝图。

2、示例代码

在文件__init__.py文件中

from app.exceptions import errors
from flask import Blueprint
from flask_restful import Api

from app.vpc.views import VPCDetailApi, VPCApi, VPCListApi

vpc_api_bp = Blueprint("vpc_api_bp", __name__)
vpc_api = Api(vpc_api_bp, prefix='/vpcs', errors=errors)

vpc_api.add_resource(VPCApi, '')
vpc_api.add_resource(VPCDetailApi, '/detail')
vpc_api.add_resource(VPCListApi, '/list')

3、代码说明

  1. 实例化一个蓝图
vpc_api_bp = Blueprint("vpc_api_bp", __name__)

通过实例化一个Blueprint类对象可以创建蓝本。这个构造函数有两个必须指定的参数:蓝本的名字和蓝本所在的包或模块。和程序一样,大多数情况下第二个参数使用Python的__name__变量即可。
2、注册蓝图

# 注册蓝图
app.register_blueprint(admin)
# 如果指定url前缀
app.register_blueprint(admin, url_prefix="/admin")
点赞
收藏
评论区
推荐文章
HelloWorld官方 HelloWorld官方
5年前
C++ 基本语法
C程序可以定义为对象的集合,这些对象通过调用彼此的方法进行交互。现在让我们简要地看一下什么是类、对象,方法、即时变量。对象对象具有状态和行为。例如:一只狗的状态颜色、名称、品种,行为摇动、叫唤、吃。对象是类的实例。类类可以定义为描述对象行为/状态的模板/蓝图。方法从基本上说,一个方法表示一种行为。一个类可以包含多个
Easter79 Easter79
4年前
ssm 不能将查询的结果返回到界面的一个原因
\在controller类中,应先定义一个ArrayList的集合即就是:List<ProductdefaultProductListnewArrayList();//实体类未Product其他的模块如下··dao、service都是定义的方法名··service的实现类返回dao的方法,即就是:p
Karen110 Karen110
4年前
Django网站实战——手把手带大家制作一个经典的网站
一、前言今天小编带大家制作一个经典的网站的案例,功能包括登录、注册、注销、改密、免密登录、忘记密码,那么下面就让我们开始吧。二、创建项目并创建子应用首先创建项目,然后在项目根目录下创建子应用,如下:djangoadminstartprojectdemo创建项目pythonmanage.pystartappweb创建子应用三、配置进入项
Stella981 Stella981
4年前
Flask, Django
1\.目录结构一般情况下,Django很系统、统一。Flask项目目录风格不同一,即使用上了蓝图。2\.数据库迁移Flask要用第三方extensions,而Django自带,这个很方便。3\.模块化Flask是用蓝图。Django可以自动生成pythonmanage.pystartapp<app_n
Stella981 Stella981
4年前
LF Edge的Akraino项目版本3已经发布,统一了MEC、AI、云和电信边缘的开源蓝图
!(https://oscimg.oschina.net/oscnet/2b444156542e456ca68e49fd6dea7f68.jpg)6个新的R3蓝图(共20个),覆盖电信、企业、物联网的用例Akraino蓝图涵盖的领域包括MEC、AI/ML、云、联网车辆、AR/VR、Android云原生、sm
Wesley13 Wesley13
4年前
JAVA设计模式之单例设计模式
    单例模式,是一种常用的软件设计模式。在它的核心结构中只包含一个被称为单例的特殊类。通过单例模式可以保证系统中,应用该模式的类一个类只有一个实例。即一个类只有一个对象实例。  在JAVA中实现单例,必须了解JAVA内存机制,JAVA中实例对象存在于堆内存中,若要实现单例,必须满足两个条件:  1.限制类实例化对象。即只能产生一个对象。
Wesley13 Wesley13
4年前
Java面试参考指南(一)
Java面向对象相关概念Java是一种基于面向对象概念的编程语言,使用高度抽象化来解决现实世界的问题。    面向对象的方法将现实世界中的对象进行概念化,以便于在应用之间进行重用。例如:椅子、风扇、狗和电脑等。Java里的类(Class)是一个蓝图、模板,或者称之为原型,它定义了同一类事物的相同属性和行为。实例(Instan
Wesley13 Wesley13
4年前
Spring学习总结(5)——IOC注入方式总结
一、构造注入在类被实例化的时候,它的构造方法被调用并且只能调用一次。所以它被用于类的初始化操作。<constructorarg是<bean标签的子标签。通过其<value子标签可以为构造方法传递参数。现在以一个简单的输出学生信息的实例演示如何为构造方法传递参数。实例程序创建过程如下。(1)建立Student接口,
小万哥 小万哥
2年前
Python 面向对象编程:类、对象、初始化和方法详解
Python是一种面向对象的编程语言。在Python中,几乎所有东西都是对象,都具有其属性和方法。类似于对象构造函数或用于创建对象的“蓝图”的类。创建一个类要创建一个类,请使用关键字class:示例,创建一个名为MyClass的类,其中包含一个名为x的属性
codigger codigger
2个月前
编程语言的“奇点”融合(上):凤凰涅槃与彩虹之桥
系列导读:在上一阶段的探索中,我们见证了从VimL到ObjectSense的工程化飞跃。而今天,讲述的是更野心的技术蓝图——PolyglotSingularity(多语言奇点)。这不仅仅是一门语言,而是一个试图融合多语言、跨平台、并让人类与AI高度协同的“