flask url_for

知道了url就可以找到对应的视图函数,那么现在问题来了,如果我们知道了视图函数,要怎么找到url呢?这时候我们就需要url_for函数了。

url_for()作用:

(1)给指定的函数构造 URL。

(2)访问静态文件(CSS / JavaScript 等)。 只要在你的包中或是模块的所在目录中创建一个名为 static 的文件夹,在应用中使用 /static 即可访问。

如:print url_for('hello_world') 或return url_for('hello_world') ,可输入结果为/

# -*- coding: utf-8 -*-

from flask import Flask,url_for

from flask import render_template

app = Flask(__name__)

title1="rr"

@app.route('/')

def hello_world():

return url_for('hello_world')

#或者return url_for('static',filename='33/2.txt')

if __name__ == '__main__':

app.run(debug=True)

return url_for('static',filename='33/2.txt') 可输出static/33/2.txt

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

print(url_for('login', next='/'))

输出:/login?next=/

在html中使用时采用下面格式:

在index.html这个文件中,添加

<p><a href="{{ url_for('login') }}">登录</a></p>

选择构建URL而不直接在代码中拼URL的原因:

(1)反向构建通常比硬编码的描述性更好。更重要的是,它允许你一次性修改 URL, 而不是到处边找边改。

(2)URL 构建会转义特殊字符和 Unicode 数据,免去你很多麻烦。

(3)如果你的应用不位于 URL 的根路径(比如,在 /myapplication 下,而不是 / ), url_for() 会妥善处理这个问题。

(0)

相关推荐

  • 初识Flask

    大邓细数了我的文章,近60篇文章中只有一篇写 微信聊天机器人使用了装饰器.大家不必担心学 不会装饰器肿么办.类学不会怎么办这类问题.Python中 类. 装饰器都属于锦上添花之物,解决的是1和还是1+ ...

  • 一个 Flask 应用运行过程剖析

    WEB前端开发社区 昨天 相信很多初学Flask的同学(包括我自己),在阅读官方文档或者Flask的学习资料时,对于它的认识是从以下的一段代码开始的: from flask import Flask ...

  • Python 做一个属于自己的web网站「上」

    原创 AI悦创 AI悦创 1周前收录于话题#Python 自动化办公实战课25#Django4"阅读本文大概需要15分钟"你好,我是悦创.今天我们来看看自动化办公系列中的做一个自己 ...

  • Flask VS Django选择哪个好?优缺点对比!

    flask和Django是Python爆火的框架,用途广.功能多.优势突出,深受大家的喜欢.那么flask对比Django框架,哪种更好呢?我想大家都有这样的疑问,通过这篇文章为大家讲解一下. 什么是 ...

  • Python 里最强的Web框架,早就不是Django和Flask了

    Python 里最强的Web框架,早就不是Django和Flask了

  • flask爱家租房项目开发(一)

    目录 需求文档 创建工程目录以及flask配置 配置日志信息 数据库设计与迁移 静态文件的配置,使浏览器可以正常访问文件 csrf 防护机制 需求文档 需求功能 1. 主页     1.1 最多5个房 ...

  • windows配置flask&&Pycharm运行第一个flask

    虚拟环境配置 为什么要使用虚拟环境 使不同应用开发环境相互独立 环境升级不影响其他应用,也不会影响全局的python环境 防止出现包管理混乱及包版本冲突 详细配置 安装 # 建议使用pip3安装到py ...

  • [Vue+Flask]前后端分离JWT用户认证授权

    传统Flask通过Flask-Login的login_user()解决登录问题,通过session进行处理,不适合前后端分离系统,所以使用JWT进行用户认证 Session-cookie: Sessi ...

  • python flask介绍

    与django等网络框架一样flask同样是非常友好,值得关注的网络框架 一个最小的应用 一个最小的 Flask 应用如下: from flask import Flask app = Flask(_ ...

  • Python实战案例:flask结合elasticsearch实现全文搜索

    ElasticSearch简称ES,其中Elastic一词通过词典查询获得. 从名字里我们可以知道,ES的特点就在于灵活的搜索,其实ES本身就是一个全文搜索引擎. 一.全文搜索原理 如何实现全文搜索? ...

  • Python Flask Restful token验证

    服务端: #!/usr/bin/env python import os import time from flask import Flask, abort, request, jsonify, g ...

  • C# 启动 Flask for Python

    概览 最近有个需求是通过c#代码来启动 python 脚本.嘿~嘿!!! 突发奇想~~既然可以启动 python 脚本,那也能启动 flask,于是开始着手操作. 先看gif图 准备 因为使用的是.N ...