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

Flask学习第6天:app.add_url_rule调用路由

时间:2020-07-21 14:24:07      阅读:112      评论:0      收藏:0      [点我收藏+]

标签:tps   alt   html   return   查看   www   print   add   输入   

一、使用url_for别名方式

之前使用@app.route这个装饰器来把视图函数和url绑定。而且可以通过url_for(‘hello_world‘)反转得到url ‘/‘

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

实际上可以给@app.route这个装饰器再加上endpoint参数,给这个url别名。一旦使用了endpoint参数,在使用url_for()反转的时候就不能使用视图函数名了,而是要用定义的url别名。

from flask import Flask,url_for
app=Flask(__name__)
@app.route(/<path:url>,endpoint=name1)  # 加上endpoint参数,给这个url别名
def first_flask(url):
    print(url_for(name1,url=url))         # 如果设置了url参数,url_for(别名,加参数)
    return Hello World

if __name__ == __main__:
    app.run()

 

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

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

技术图片

  rule:  设置url

  endpoint:  给url设置的名字

  view_func:  视图函数

因此可以这样用

app=Flask(__name__)

def first_flask():
    return Hello World 

app.add_url_rule(rule=/index/,endpoint=name1,view_func=first_flask,methods=[GET])
#app.add_url_rule(rule=访问的url,endpoint=路由别名,view_func=视图名称,methods=[允许访问的方法])
if __name__ == __main__:
    app.run()

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

 

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

技术图片

转载:https://www.cnblogs.com/sellsa/p/9248170.html

Flask学习第6天:app.add_url_rule调用路由

标签:tps   alt   html   return   查看   www   print   add   输入   

原文地址:https://www.cnblogs.com/fuquanjun/p/13354189.html

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