官方文档

1.url_for()作用:
(1)给指定的函数构造 URL。
(2)访问静态文件(CSS / JavaScript 等)。 只要在你的包中或是模块的所在目录中创建一个名为 static 的文件夹,在应用中使用 /static 即可访问。

1.1给指定的函数构造 URL:
它接受函数名作为第一个参数,也接受 URL 规则中对应的变量作为参数。未知变量部分会添加到 URL 末尾作为查询参数。

from flask import Flask, url_for
app = Flask(__name__)
@app.route('/')
def index(): pass@app.route('/login')
def login(): pass@app.route('/user/<username>')
def profile(username): passwith app.test_request_context():
print(url_for('index'))
print(url_for('login'))#将未知变量next添加到 URL 末尾作为查询参数
print(url_for('login', next='/'))# 将 URL 规则中对应的变量 username 作为参数
print(url_for('profile', username='John Doe'))

output: 
/
/login
/login?next=/
/user/John%20Doe

1.2访问静态文件

url_for('static', filename='style.css')
这个文件应该存储在文件系统上的 static/style.css 。

2.选择构建URL而不直接在代码中拼URL的原因: 
(1)反向构建通常比硬编码的描述性更好。更重要的是,它允许你一次性修改 URL, 而不是到处边找边改。
(2)URL 构建会转义特殊字符和 Unicode 数据,免去你很多麻烦。
(3)如果你的应用不位于 URL 的根路径(比如,在 /myapplication 下,而不是 / ), url_for() 会妥善处理这个问题。

3.url_for()构建url原理:
url_for() 使用endpoint ,通过反向机制构建URL路径

参考:

http://docs.jinkan.org/docs/flask/quickstart.html#context-locals

flask之url_for()函数相关推荐

  1. 【Flask】url_for函数

    一般我们通过一个 URL 就可以执行到某一个函数.如果反过来,我们知道一个函数,怎么去获得这个 URL 呢? url_for 函数就可以帮我们实现这个功能. url_for的主要目的是:为了按照路由列 ...

  2. flask之url_for()函数解析

    官方文档 1.url_for()作用: (1)给指定的函数构造 URL. (2)访问静态文件(CSS / JavaScript 等). 只要在你的包中或是模块的所在目录中创建一个名为 static 的 ...

  3. Flask中的 url_for() 函数

    最近在学Python Flask框架,并且学会做一些简单的项目,如做一个网站的登录页面等,其中学到了一个路由反向解析的函数 url_for(),这里做一个小结,供日后复习. 1.URL反转:根据视图函 ...

  4. flask中url_for的作用

    一句话讲清楚url_for是干嘛的,就是高级版的重定向redirect. 就好比,yield是高级版的return一样. # -*- coding: utf-8 -*- import sys relo ...

  5. 我爱Flask之url_for()方法和HTTP请求

    黄色标注部分重点注意 文章目录 ==黄色标注部分重点注意== 1. 用url_for来获取对应函数的URL(路由) 2. 指定HTTP的请求方法(POST和GET) 3. 网页跳转和重定向 3.1 重 ...

  6. Flask之钩子函数

    Flask之钩子函数 类似django的中间件,作用就是在进入框架的之后 http方法之前或返回response之前进行一些操作 Flask的钩子函数可在注册时根据注册的app或者蓝图从而确定钩子函数 ...

  7. 【flask】视图函数返回的中文数据显示乱码

    [flask]视图函数返回的中文数据显示乱码 1.背景 2.示例 1.背景 在使用flask搭建服务时,经常遇到返回的中文数据显示乱码问题, 时间久了容易忘记,特别记录一下. flask视图函数返回的 ...

  8. flask返回json数据到前端_小白学Flask第六天| abort函数、自定义错误方法、视图函数的返回值...

    点击蓝色字关注我们! 一个正在努力变强的公众号 本文内容: 1. abort函数的使用 2. 自定义错误处理方法 3. 设置响应信息的方法 4. 返回json数据的方法 abort函数的使用 abor ...

  9. web框架总结(django、flask)

    1.MVC解读 M:Model,模型,和数据库进行交互 V:View,视图,负责产生Html页面 C:Controller,控制器,接收请求,进行处理,与M和V进行交互,返回应答. 1.用户点击注 2 ...

最新文章

  1. checking size of char… configure: error: cannot compute sizeof (char) 解决方法
  2. 算法入门篇二 认识O(NlogN)的排序
  3. linux搭建web服务器原理,【LINUX】linux搭建web服务器
  4. Cgroup 好文集合
  5. 容器编排技术 -- Kubernetes 重新配置活动集群中节点的 Kubelet
  6. Redis数据持久化管理之RDB模式
  7. disruptor小结1--优势
  8. mediacodec surfaceview解码失败
  9. 【Nature论文浅析】基于模型的AlphaGo Zero
  10. 牛客小白月赛4 J 强迫症 思维
  11. 2018, CHI CHI2016汇总all CHI
  12. Android 最常用的设计模式五 安卓源码分析——建造者模式
  13. 我过去的那些编程思想
  14. 利用opencv从USB摄像头获取图片 获得摄像头编号
  15. Python零基础入门-4 使用函数减少重复操作
  16. 土鸡和土鸡蛋价格一直很高,为何农民说养土鸡不赚钱?
  17. 阿里云oss部署静态网页
  18. 从苹果官网细看20年设计变迁史
  19. android是不是百合手机号码,百合定位(百合定位电话手表)V1.0.16 手机版
  20. 疾风之刃服务器维修,腾讯曾推出3D版DNF《疾风之刃》,为何最终成为了冷门游戏...

热门文章

  1. 荣耀出鸿蒙系统,荣耀Magic 3亮出利剑,120Hz+鸿蒙系统+双6400万,这才是荣耀旗舰...
  2. 达梦管理员手册及客户端学习
  3. Springboot使用杂谈
  4. HTML的锚链实现跳转,HTML网页制作锚点链接的方法
  5. Reivt:文件中的三维视图没有颜色
  6. 全媒体运营师胡耀文教你:如何搭建和运营会员产品的核心能力?
  7. Android手机usb口清洗,Android手机有什么方法通过USB接口共享PC的网络
  8. 苹果发布三款iPhone一款手表 双卡双待终于来了 还号称A12芯片迄今最智能
  9. js实现 input 框的动态赋值
  10. 2021.2.28blog补录