千家信息网

Python Django如何获取URL中的数据

发表于:2024-10-22 作者:千家信息网编辑
千家信息网最后更新 2024年10月22日,小编给大家分享一下Python Django如何获取URL中的数据,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!Django获取URL中的数据URL中的参数一般有两种形式。如下所示:
千家信息网最后更新 2024年10月22日Python Django如何获取URL中的数据

小编给大家分享一下Python Django如何获取URL中的数据,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!

    Django获取URL中的数据

    URL中的参数一般有两种形式。如下所示:

    1. https://zy010101.blog.csdn.net/article/details/1208169542. https://so.csdn.net/so/search?q=Django&t=blog&u=zy010101

    我们将第一种形式称为"URL路径参数";第二种形式称为"URL关键字形式"。下面讲述如何在Django中获取这两种形式的数据。

    URL路径参数

    使用path函数
    from django.urls import pathfrom . import viewsurlpatterns = [    path('articles/2003/', views.special_case_2003),    path('articles//', views.year_archive),    path('articles///', views.month_archive),    path('articles////', views.article_detail),]

    关于这段URL的解释说明,直接参考Django官方文档即可。

    为了防止有时候进不去文档,我将官方文档也直接贴在下面:

    使用re_path函数

    如果,使用path函数并不能满足你匹配URL的要求,那么可以使用re_path函数来使用正则表达式来匹配URL路径中的参数。需要注意在Django中,使用正则表达式来获取分组中的值的语法是(?Ppattern),其中 name 是组名,pattern 是要匹配的模式。

    from django.urls import path, re_pathfrom . import viewsurlpatterns = [    path('articles/2003/', views.special_case_2003),    re_path(r'^articles/(?P[0-9]{4})/$', views.year_archive),    re_path(r'^articles/(?P[0-9]{4})/(?P[0-9]{2})/$', views.month_archive),    re_path(r'^articles/(?P[0-9]{4})/(?P[0-9]{2})/(?P[\w-]+)/$', views.article_detail),]

    这段URL配置的说明可以参考使用正则表达式

    同样,为了防止有时候进不去文档,我将官方文档也直接贴在下面:

    需要特别注意的是,正则表达式进行匹配之后,捕获的参数都作为字符串传递给视图函数(视图类)。

    URL关键字形式

    通常,除了在URL路径中传递数据,也可以在URL参数中进行数据传递。例如:

    http://www.demo.com/index?keys=123&values=qwe

    这段URL传递了参数keys和values,它们的值分别是123,qwe.

    在此之前,先来介绍一下前备条件QueryDict。

    HttpRequest对象的属性GET、POST都是QueryDict类型的对象

    Django获取URL关键字参数可以通过HttpRequest.GET属性来获取。例如:

    def test(request):    a = request.GET.get("a")    b = request.GET.get("b")    c = request.GET.get("c")    a_all = request.GET.getlist("a")    res = a+'
    '+b+'
    '+c+'
    '+str(a_all) return HttpResponse(res)

    现在使用如下的URL进行请求:

    http://127.0.0.1:8008/test?a=1&a=2&b=3&c=4

    页面显示如下所示:


    查询字符串不区分请求方式,即假使客户端进行POST方式的请求,依然可以通过request.GET获取请求中的查询字符串数据。

    看完了这篇文章,相信你对"Python Django如何获取URL中的数据"有了一定的了解,如果想了解更多相关知识,欢迎关注行业资讯频道,感谢各位的阅读!

    参数 数据 形式 函数 文档 正则 表达式 路径 关键 关键字 字符 字符串 官方 可以通过 对象 属性 方式 有时候 篇文章 视图 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 万网域名服务器 最新绝地求生怎么看服务器 配置和管理dns服务器 wow nga数据库 网络安全四梁八柱具体指什么 安徽多易善网络技术有限公司 光网络技术 万助军 天盟网络技术有限公司怎么样 横琴澳瑞真互联网科技有限公司 奇安信网络安全集团 计算机网络技术二建 dw连接不到数据库 bim软件开发过程 河南新乡市移动的服务器地址 软件开发epr方向解释 网络安全产品包括什么 数据库技术索引的原理 文广局网络安全风险评估总结 广西黑蜂网络技术有限公司 中小学生及家长安全网络安全 同行数据库系统 神州动力数码软件开发 酒泉数维网网络技术有限公司 云打印服务器安全证书已过期 如何控制别人服务器 儿童客户端数据库密码忘记 数据库删除用户和表空间还 数据库技术索引的原理 违反网络安全法情节严重的 软件开发法人多久可以换一次
    0