关于Flask中endpoint和blueprint正解解读是什么
flask里面的endpoint和blueprint要怎么理解
感谢,之前也看不太怎么看懂blueprint,现在有点理解了。
如果你有写几个简单的示例应该能够注意到,每次通过url请求的时候,flask都会根据url找到处理它的view函数,如下:
python
user = Blueprint('user', __name__) @user.route('/greeting') def greeting(): return 'Hello, lowly normal user!'
在未指定endpoint的时候默认把greeting
函数作为endpoint。简单来说endpoint就是一个标识符用于决定当一个请求来了之后由那一个逻辑单元去执行。
而blueprint是flask中组织view函数或者说组织各种静态资源的一种方式,就像我们书的目录一样,这样当一个请求过来的时候都可以通过这个目录找到对应的view函数,同时对于各个view函数,其他的view函数都是对其可见的,各个view函数之间也可以通过这个目录找到其他的view函数,如下:
user.py
user = Blueprint('user', __name__)
@user.route('/greeting')
def greeting():
return 'Hello, lowly normal user!'
admin.py
admin = Blueprint('admin', __name__)
@admin.route('/greeting')
def greeting():
return 'Hello, administrative user!'
分布在不同文件下的不同view函数,可以通过url_for('admin.greeting')
或url_for('user.greeting')
来跳转。对于这两个view来说,对方都是可见的,可以通过这个方式来调用。就像我看书看到第一章的第一节,突然想看第三章的第一节差不多意思。
总结下来就是,bluepint是实现通过url找到view的一套机制;而endpoint是实现这套机制时给该url定义的一个标识符。大概就是这样了,不知道这样讲有没有明白。
玩蛇网文章,转载请注明出处和文章网址:https://www.iplaypy.com/wenda/wd18473.html
相关文章 Recommend
- • 优集品网络科技有限公司招Python中/高级工程师
- • 请python高手帮我看看这段python代码中函数setter的
- • python re模块中的 match()和group()疑问
- • macos x中python是默认就有的吗?
- • python如何缩短cmd中过长的命令
- • 豆瓣API 40次/分钟的访问限制怎么办
- • 又是python乱码问题,excel类型文件单元格内数据有
- • python语言中的pcap与dpkt在统计中的作用分别是什么
- • 问浏览器地址栏如何执行虚拟主机脚本关于环境
- • 一段代码中使用了sqlite有部分不理解的地方,求老
- • python异常的问题有代码求指教,关于raise语句
- • 环境部署问题,python web应用可以在代码中判断de
您现在的位置: 玩蛇网首页 > Python问题解答 > 正文内容
我要分享到:
必知PYTHON教程 Must Know PYTHON Tutorials
- • python 解释器
- • python idle
- • python dir函数
- • python 数据类型
- • python type函数
- • python 字符串
- • python 整型数字
- • python 列表
- • python 元组
- • python 字典
- • python 集合
- • python 变量
- • python print
- • python 函数
- • python 类定义
- • python import
- • python help
- • python open
- • python 异常处理
- • python 注释
- • python continue
- • python pass
- • python return
- • python global
- • python assert
- • python if语句
- • python break
- • python for循环
- • python while循环
- • python else/elif
- • lambda匿名函数
必知PYTHON模块 Must Know PYTHON Modules
- • os 模块
- • sys 模块
- • re 正则表达式
- • time 日期时间
- • pickle 持久化
- • random 随机
- • csv 模块
- • logging 日志
- • socket网络通信
- • json模块
- • urlparse 解析URL
- • urllib 模块
- • urllib2 模块
- • robotparser 解析
- • Cookie 模块
- • smtplib 邮件
- • Base64 编码
- • xmlrpclib客户端
- • string 文本
- • Queue 线程安全
- • math数学计算
- • linecache缓存
- • threading多线程
- • sqlite3数据库
- • gzip压缩解压
最新内容 NEWS
- • django app提供pv信息的方法是什么
- • Django项目版本升级如何操作?
- • django较多数据传递如何优雅的呈现
- • django1.7获取参数问题求助
- • Django1.7使用内置comment遇到问题
- • python mysql数据库做insert操作时报_mysql_ex
- • 关于python mysql的duplicate insert机制的疑问
- • pymongo使用insert函数批量插入被中断要怎么
- • Python程序员解决棘手问题的常用库
- • 求助关于restfull api接口几个问题
图文精华 RECOMMEND
-
django1.7获取参数问题求助
-
Python程序员解决棘手问题的常用库
-
求问str()同__str__原理上有什么不同
-
scrapy框架里面用link extractor怎么能
-
python {}.fromkeys创建字典append添加操
-
python3 类型Type str doesn't support th
热点文章 HOT
- 学习Python有什么好的书籍推荐?
- Python匿名函数 Lambda表达式作用
- Python与Java、C、Ruby、PHP等编程语言有什么
- Python 正则中文网页字符串提取问题
- 如何为实时性应用存取经纬度?django my
- 想用python做个客户端,在二维码登录这个地
- 有让IDE可识别Python函数参数类型的方法吗
- Python字符串转换成列表正则疑问