码迷,mamicode.com
首页 > 移动开发 > 详细

8、Flask实战第8天:add_url_rule和app.route原理

时间:2018-06-30 18:55:57      阅读:180      评论:0      收藏:0      [点我收藏+]

标签:info   end   ctrl   http   strong   word   bubuko   反转   技术   

之前我们使用@app.route这个装饰器来把视图函数和url绑定

@app.route(/)
def hell_world():
    return hello world

而且我们可以通过url_for(‘hello_world‘)反转得到url ‘/‘

实际上我们可以给这个装饰器再加上endpoint参数,给这个url命名

@app.route(/, endpoint=index)
def hello_word():
    return hello world

一旦我们使用了endpoint参数,在使用url_for()反转的时候就不能使用视图函数名了,而是要用我们定义的url名

url_for(index)

另外一种方式绑定视图函数和url,那就是add_url_rule

先在app = Flask(__name__)下面输入app.add_url_rule, 然后按住ctrl点击它查看源码

技术分享图片

  rule:  设置url

  endpoint:  给url设置的名字

  view_func:  视图函数

因此,我们可以这样用

def my_list():
    return my list

app.add_url_rule(rule=/list/, endpoint=list, view_func=my_list)

如果要使用url_for反转的话也是: url_for(‘list‘)

 

实际上,我们看@app.route这个装饰器的源码,也是用add_url_rule

技术分享图片

8、Flask实战第8天:add_url_rule和app.route原理

标签:info   end   ctrl   http   strong   word   bubuko   反转   技术   

原文地址:https://www.cnblogs.com/sellsa/p/9248170.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!