今天来学习Flask中URL和视图的相关知识。
URL不多说了,访问网站,浏览器中的地址大家都可以看到,比如我的51CTO的blog网址是:https://blog.51cto.com/jiaszwx
如果你在地址栏里敲:https://blog.51cto.com/ 那么浏览器返回的是51CTO博客的主页。
如果你在地址栏里敲:https://blog.51cto.com/jiaszwx 那么浏览器返回的是我的51CTO博客主页。
一个网站地址有共同的前缀,但是有很多的子网页,不同的子网页就是通过URL里的参数来表示的,例如上面的例子。重点来了,在Flask当中,如何来表示URL的参数呢?记住,一定要用尖括号括起来。例如:<id>,<name>,<location>.......,那么放到哪里呢?放到路由的括号里。 要像这样:@app.route('/article/<id>')
这个是重点!!!!!
URL中的参数一定要用尖括号括起来!
URL中的参数一定要用尖括号括起来!
URL中的参数一定要用尖括号括起来!
重要的事情说三遍。。。
OK!现在参数定义好了,那如何跟视图函数对应起来呢?直接作为视图函数的参数传给它就好了,如下:
@app.route('/article/<id>') #URL的参数表示方法
def article(id): #在视图函数中直接引用URL中的参数即可得到参数的值
return "Your request parameter is %s" %id
来看一个实际例子,完整代码如下:
from flask import Flask
app = Flask(__name__)
@app.route("/")
def hello_flask():
return "Hello World! This is my first Flask! Welcome to Flask! Flask is Fun and Easy to setup!"
@app.route('/article/<id>') #URL的参数表示方法
def article(id): #在视图函数中直接引用URL中的参数即可得到参数的值
return "Your request parameter is %s" %id
if __name__ == '__main__':
app.run(debug=True)
实际效果见下图:
在地址栏中输入:http://127.0.0.1:5000/ 会显示下面的页面:
在地址栏中输入带参数的URL:http://127.0.0.1:5000/article/asdf111223 则会显示下面的页面:
/article/ 后面的参数是任意的,现在是手动输入,但是现实中都是从数据库中直接取出来的,现在只要了解如何来定义URL参数就可以了,后面数据从哪里来,还是你说了算。
继续再跟个例子,加深一下印象。这次加一个名字参数,代码如下:
from flask import Flask
app = Flask(__name__)
@app.route("/")
def hello_flask():
return "Hello World! This is my first Flask! Welcome to Flask! Flask is Fun and Easy to setup!"
@app.route('/article/<id>')
def article(id):
return "Your request parameter is %s" %id
@app.route('/userinfo/<name>')
def userinfo(name):
return "User name is: %s" %name
if __name__ == '__main__':
app.run(debug=True)
运行一下,各位客官老爷看一下效果:
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。