玩蛇网提供最新Python编程技术信息以及Python资源下载!
您现在的位置: 玩蛇网首页 > Python问题解答 > 正文内容

关于Flask中endpoint和blueprint正解解读是什么

flask里面的endpoint和blueprint要怎么理解

感谢,之前也看不太怎么看懂blueprint,现在有点理解了。

如果你有写几个简单的示例应该能够注意到,每次通过url请求的时候,flask都会根据url找到处理它的view函数,如下:

pythonuser = 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定义的一个标识符。大概就是这样了,不知道这样讲有没有明白。

玩蛇网文章,转载请注明出处和文章网址:http://www.iplaypy.com/wenda/wd18473.html

相关文章 Recommend

玩蛇网Python互助QQ群,欢迎加入-->: 106381465 玩蛇网Python新手群
修订日期:2017年06月12日 - 10时29分21秒 发布自玩蛇网

我要分享到:

必知PYTHON教程 Must Know PYTHON Tutorials

必知PYTHON模块 Must Know PYTHON Modules