首页 > Web开发 > 详细

Flask web开发之路三

时间:2018-03-24 21:18:55      阅读:228      评论:0      收藏:0      [点我收藏+]

今天写一个URL传参、反转URL、页面跳转和重定向

URL传参 

主app文件代码:

from flask import Flask

app = Flask(__name__)


@app.route(/)
def hello_world():
    return Hello World!

@app.route(/article/<id>)
def article(id):
    return 您请求的参数是: %s %id

if __name__ == __main__:
    app.run()

### url传参数:
1. 参数的作用:可以在相同的URL,但是指定不同的参数,来加载不同的数据。
2. flask中如何使用参数:
‘‘‘
@app.route(‘/article/<id>‘)
def article(id):
return ‘您请求的参数是: %s‘ %id
‘‘‘
* 参数需要放在两个尖括号中。
* 视图函数中需要放和url中的参数同名的参数

反转URL

首先,正转是指由URL中的参数得到视图函数中的内容,那么反转就是指从视图函数得到URL的参数内容

代码如下:

from flask import Flask,url_for

app = Flask(__name__)


@app.route(/)
def index():
    print(url_for(my_list))
    print(url_for(article,id =abc))
    return Hello World!

@app.route(/list/)
def my_list():
    return list

@app.route(/article/<id>/)
def article(id):
    return 您请求是id是:%s % id


if __name__ == __main__:
    app.run(debug=True)

输出得到:

技术分享图片

注意,这里article函数,有id参数,在url_for函数中需要传入参数,否则会报错

### 反转url:
1. 什么叫做反转url:从视图函数到URL的转换叫做反转url
2. 反转url的用处:
* 在页面重定向的时候,会使用url反转
* 在模板中,也会使用url反转

页面跳转和重定向

代码如下:

from flask import Flask,redirect,url_for

app = Flask(__name__)


@app.route(/)
def index():
    login_url = url_for(login)
    return redirect(login_url)
    return 这是首页!

@app.route(/login/)
def login():
    return 这是登录页面!

@app.route(/question/<is_login>/)
def question(is_login):
    if is_login == 1:
        return 这是发布问答页面
    else:
        return redirect(url_for(login))

if __name__ == __main__:
    app.run(debug = True)

这里实现的功能是:

1.登录主页即可跳转到‘login‘登录页面

2.如果‘is_login’这个参数不为1,则会跳转到登录页面

### 页面跳转和重定向
1. 用处:在用户访问一些需要登录的页面的时候,如果用户满意登录,那么可以让他重定向到登录页面
2.代码实现:
‘‘‘
from flask import redirect,url_for
redirect(url_for(‘login‘))
‘‘‘

Flask web开发之路三

原文:https://www.cnblogs.com/yqpy/p/8641354.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!