flask中url_for的作用


一句话讲清楚url_for是干嘛的,就是高级版的重定向redirect。

就好比,yield是高级版的return一样。


# -*- coding: utf-8 -*-
import sys
reload(sys)
sys.setdefaultencoding('utf-8')

import os

from flask import Flask,request,url_for
app=Flask(__name__)
@app.route('/test')
def query_user():
    '''
    http://127.0.0.1:5000/test?id=123
    '''
    id = request.args.get('id')
    return 'query user:'+id

#url_for的作用:输入的函数名=>url_for(函数名)=>得到函数头顶上的app.route里面的东西☆☆☆☆☆☆
#url_for就是用来重定向的,但是可以抵抗@app.route(x)里面的名字被修改成y以后redirect(x)也需要对应修改成redirect(y)
@app.route('/query_url')
def query_url():
    '''
    反导出 query_user函数名对应的url地址
    '''
    print url_for('query_user')
    return url_for('query_user')

#url作用:
# 参考该链接:
# https://segmentfault.com/q/1010000003827928
# url_for本身可以传参数,所以模拟客户端的任意请求url:
# 1.业务代码里面用来做重定向
# 2.单元测试中可以构造请求


def killport(port):
	command='''kill -9 $(netstat -nlp | grep :'''+str(port)+''' | awk '{print $7}' | awk -F"/" '{ print $1 }')'''
	os.system(command) 

if __name__ == '__main__':
	killport(5000)
	app.run()

# 代码来自:
#参考链接1:http://blog.csdn.net/weiyongxuan/article/details/48544629
#参考链接2:https://segmentfault.com/q/1010000003827928

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值