-
视图函数中关于url_map视图的映射:应该是[ url->methonds->endpoint ]
-
而整个请求的过程,是先通过url地址映射到端点endpoint,然后通过endpoint找到试图函数view_func(扩展:在Flask类里边有一个view_funtions的属性,view_functions属性默认是一个空字典,其作用就是存储endpoint:view_func函数名键值对,装饰器@app.route()里边如果不填endpoint参数,则默认的参数endpoint(是个字符串)的名字与视图函数名字相同)
-
视图函数的名字是可以相同的,只要他们的端点endpoint不相同,同一个实例对象app中的试图函数名是可以相同的,why?(本质:总结点2中的过程,一个实例对象app的本质过程是通过url先找到endpoint的值(url_map映射),然后endpoint在字典view_functhions中找到视图函数view_func)所以,在flask中同一实例对象app中试图函数名可以相同,但是endpoint不能相同,因为endpoint是view_funtions(字典)中的键。
-
url_for反转函数中的第一个参数也是endpoint,之所以我们在重定向的时候使用redirect(url_for(’index’))是默认他的函数名view_func和端点endpoint相同,例如:
-
view_functions={‘index’:index},键就是’index’(endpoint),值就是函数名index(view_func)