• Flask入门 之 endpoint


    首先,要纠正两个错误!

    1.flask是通过endpoint找到viewfunction(视图函数的),并不是通过路由直接找到viewfunction的。

    2.是url_for(endpoint)而不是url_for(路由)

    为什么很多人会有以上两种想法呢?因为,在构建路由的时候,如果不指定endpoint,系统定义为endpoint和viewfunction一个名字!!!!!!

    注意:

    • 每个应用程序app都有一个view_functions,这是一个字典,存储endpoint-view_func键值对。add_url_rule的第一个作用就是向view_functions中添加键值对(这件事在应用程序run之前就做好了)
    • 每个应用程序app都有一个url_map,它是一个Map类(具体实现在werkzeug/routing.py中),里面包含了一个列表,列表元素是Role的实例(werkzeug/routing.py中)。add_url_rule的第二个作用就是向url_map中添加Role的实例(它也是在应用程序run之前就做好了)
      我们可以通过一个例子来看:
    • 实际上,当请求传来一个url的时候,会先通过rule找到endpoint(url_map),然后再根据endpoint再找到对应的view_func(view_functions)。通常,endpoint的名字都和视图函数名一样。
  • 相关阅读:
    阅读配色
    电影资源下载
    处理原电影音频
    导入字幕实操
    视频剪辑实操
    录音实操
    py2neo的一些基础用法
    debug时报错:UnicodeDecodeError: 'utf8' codec can't decode byte 0xe6 in position 1023: unexpected end of data
    MYSQL MDL监控
    MYSQL 表磁盘大小(INNODB_SYS_TABLESPACES)
  • 原文地址:https://www.cnblogs.com/viplanyue/p/12700679.html
Copyright © 2020-2023  润新知