1. 程式人生 > >Flask_學習筆記_02: URL和檢視

Flask_學習筆記_02: URL和檢視

今天來學習Flask中URL和檢視的相關知識。

URL不多說了,訪問網站,瀏覽器中的地址大家都可以看到,比如我的51CTO的blog網址是:http://blog.51cto.com/jiaszwx

如果你在位址列裡敲:http://blog.51cto.com/ 那麼瀏覽器返回的是51CTO部落格的主頁。
如果你在位址列裡敲:http://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/ 會顯示下面的頁面:
Flask_學習筆記_02: URL和檢視

在位址列中輸入帶引數的URL:http://127.0.0.1:5000/article/asdf111223 則會顯示下面的頁面:
Flask_學習筆記_02: URL和檢視

/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)

執行一下,各位客官老爺看一下效果:
Flask_學習筆記_02: URL和檢視