使用 Flask 获取查询参数
通过这个解释,我们将学习如何借助 Flask 中的请求查询字符串从 URL 中获取参数。
借助 Flask 中的请求查询字符串提取参数
通常,我们在 Flask 中使用我们的参数构建一个干净的 URL,但有时我们出于某种原因想要一个传统的查询字符串。我们的查询字符串易于使用;它们只是由&
和右侧的值分隔。
现在我们将向你展示如何提取它们,我们可以在应用程序的某个地方使用它们,所以让我们开始吧。我们将设置我们的 Flask 应用程序,我们将从 Flask 模块导入 Flask
类,我们还需要导入请求变量并使用 Flask
类实例化一个对象。
from flask import Flask , request
我们将定义主块,在这个块内,我们将使用 run()
方法来运行我们的应用程序。然后我们将把 debug
等于 True
。
if __name__=='__main__':
app.run(debug=True)
现在我们将创建一个新路由并为此路由调用 params
,该函数将命名为 Get_Query_Params()
。我们将返回一些字符串以从查询字符串中获取参数。
我们将需要使用 requests 变量,定义两个参数并访问查询参数。要获取它们,我们只需要调用 requests.args
,这是一个包含查询字符串中所有参数的字典。
第一个将被称为 VAR1
,第二个将被称为 VAR2
并使用 requests.args['key']
键存储字典值。我们正在返回这些字典项以在页面上显示它们。
@app.route('/params')
def Get_Query_Params():
VAR1=request.args['var1']
VAR2=request.args['var2']
return f'Student name is: {VAR!} and Father nmae is: {VAR2}'
让我们启动服务器,在路由内部传递参数,然后点击 Enter 以查看显示的参数。
现在我们可以看到我们很容易从查询字符串中提取这些值。
我们将再举一个例子来访问所有查询参数。我们将创建一个名为 var1
的变量,它将存储 request.args
;这是一个包含我们作为查询参数提供的所有键和值的字典。
现在我们将在字典项上应用一个 for
循环,并能够访问和打印这些键和值。
@app.route('/')
def Get_Query_Params():
var1=request.args
for key,value in var1.items():
print(key,value)
使用这些键,我们还可以使用 if-else 语句访问特定的查询参数,以检查这些实际查询参数是否存在。目前,我们用来访问密钥的方式是使用 var1.get()
而不是使用 request.args['key']
因为 get()
是帮助我们访问密钥的方法。
if 'nationality' in var1.keys():
print(var1.get('nationality'))
return f'Age is {var1.get("age")} and nationality is {var1.get("nationality")}'
现在我们保存并启动服务器,进入浏览器,并在路由中提供键值对。当我们运行这个页面时,我们可以看到显示的参数,以及我们可以在控制台中看到打印键和值的地方。
这与从表单中获取数据非常相似;如果有人提交表单,我们可以从端点提取它。
完整的 Python 代码:
from flask import Flask , request
app = Flask(__name__)
# @app.route('/params')
# def Get_Query_Params():
# VAR1=request.args['var1']
# VAR2=request.args['var2']
# return f'Student name is: {VAR1} and Father nmae is: {VAR2}'
@app.route('/')
def Get_Query_Params():
var1=request.args
for key,value in var1.items():
print(key,value)
if 'nationality' in var1.keys():
print(var1.get('nationality'))
return f'Age is {var1.get("age")} and nationality is {var1.get("nationality")}'
if __name__=='__main__':
app.run(debug=True)
相关文章
Django 中的 Slug
发布时间:2023/05/04 浏览次数:173 分类:Python
-
本篇文章旨在定义一个 slug 以及我们如何使用 slug 字段在 Python 中使用 Django 获得独特的帖子。
在 Django 中按降序过滤查询集中的项目
发布时间:2023/05/04 浏览次数:157 分类:Python
-
在这个讲解中,学习如何借助 Django 中的 order_by() 方法按降序过滤出查询集中的项目。
Django ALLOWED_HOSTS 介绍
发布时间:2023/05/04 浏览次数:181 分类:Python
-
本文展示了如何创建您的 Django 网站,为公开发布做好准备,如何设置 ALLOWED_HOSTS 以及如何在使用 Django 进行 Web 部署期间修复预期的主要问题。
Django 中的 Select_related 方法
发布时间:2023/05/04 浏览次数:129 分类:Python
-
本文介绍了什么是查询集,如何处理这些查询以及我们如何利用 select_related() 方法来过滤 Django 中相关模型的查询。
使用 Post 请求将数据发送到 Django 服务器
发布时间:2023/05/04 浏览次数:159 分类:Python
-
在这篇关于Django的讲解中,我们简要介绍了post和get请求以及如何在Django中用post实现CSRF token。
Django 返回 JSON
发布时间:2023/05/04 浏览次数:106 分类:Python
-
在与我们的讨论中,我们简要介绍了 JSON 格式,并讨论了如何借助 Django 中的 JsonResponse 类将数据返回为 JSON 格式。
在 Django 中创建对象
发布时间:2023/05/04 浏览次数:59 分类:Python
-
本文的目的是解释什么是模型以及如何使用 create() 方法创建对象,并了解如何在 Django 中使用 save() 方法。
在 Django 中为多项选择创建字段
发布时间:2023/05/04 浏览次数:75 分类:Python
-
在本文中,我们将着眼于为多项选择创建一个字段,并向您展示如何允许用户在 Django 中进行多项选择。