首页
学习
活动
专区
圈层
工具
发布

django 1.8 官方文档翻译: 3-1-1 URL调度器

关键字参数由正则表达式匹配的命名组组成,但是可以被django.conf.urls.url()的可选参数kwargs覆盖。...在更高级的用法中,可以使用命名的正则表达式组来捕获URL 中的值并以关键字 参数传递给视图。 在Python 正则表达式中,命名正则表达式组的语法是(?...P[0-9]{2})/$', views.article_detail), ] 这个实现与前面的示例完全相同,只有一个细微的差别:捕获的值作为关键字参数而不是位置参数传递给视图函数。...这个技术在Syndication 框架 中使用,来传递元数据和选项给视图。 处理冲突 URL 模式捕获的命名关键字参数和在字典中传递的额外参数有可能具有相同的名称。...在某些场景中,一个视图是通用的,所以在URL 和视图之间存在多对一的关系。对于这些情况,当反查URL 时,只有视图的名字还不够。请阅读下一节来了解Django 为这个问题提供的解决办法。

2K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Django url 反向解析 和 命令空间

    Django 依次匹配该列表中的每个URL模式,在遇到第一个与请求的URL相匹配的模式时停下来。...关键字参数由与正则表达式相匹配的命名组组成,并且这些关键字参数可以被django.conf.urls.url()的可选参数kwargs覆盖。...在更高级的用法中,可以使用命名的正则表达式组来捕获URL  中的值并以关键字 参数传递给视图。 在Python 正则表达式中,命名正则表达式组的语法是(?...这个技术在Syndication 框架 中使用,来传递元数据和选项给视图。 处理冲突 URL 模式捕获的命名关键字参数和在字典中传递的额外参数有可能具有相同的名称。...在某些场景中,一个视图是通用的,所以在URL 和视图之间存在多对一的关系。对于这些情况,当反查URL 时,只有视图的名字还不够。请阅读下一节来了解Django 为这个问题提供的解决办法。

    3.2K30

    django之urls系统

    : 正则表达式:一个正则表达式字符串 views视图函数:一个可调用对象,通常为一个视图函数或一个指定视图函数路径的字符串 参数:可选的要传递给视图函数的默认参数(字典形式) 别名:一个可选的name参数...在更高级的用法中,可以使用分组命名匹配的正则表达式组来捕获URL中的值并以关键字参数形式传递给视图。 在Python的正则表达式中,分组命名正则表达式组的语法是(?...P[0-9]{2})/$', views.article_detail), ] 这个实现与前面的示例完全相同,只有一个细微的差别:捕获的值作为关键字参数而不是位置参数传递给视图函数。...捕获的参数永远都是字符串 每个在URLconf中捕获的参数都作为一个普通的Python字符串传递给视图,无论正则表达式使用的是什么匹配方式。...P[0-9]{4})/$', views.year_archive), 传递到视图函数views.year_archive() 中的year 参数永远是一个字符串类型。

    1.8K70

    Django之路由系统

    但 Django 默认这个参数为 APPEND_SLASH = True。...在更高级的用法中,可以使用分组命名匹配的正则表达式组来捕获URL中的值并以关键字参数形式传递给视图。 在Python的正则表达式中,分组命名正则表达式组的语法是(?...P[0-9]{2})/$', views.article_detail), ] 这个实现与前面的示例完全相同,只有一个细微的差别:捕获的值作为关键字参数而不是位置参数传递给视图函数。...捕获的参数永远都是字符串   每个在URLconf中捕获的参数都作为一个普通的Python字符串传递给视图,无论正则表达式使用的是什么匹配方式。...P[0-9]{4})/$', views.year_archive), 传递到视图函数views.year_archive() 中的year 参数永远是一个字符串类型。

    1.6K70

    Django视图层之路由配置系统(urls)

    ,通常为一个视图函数或一个指定视图函数路径的字符串 可选的要传递给视图函数的默认参数(字典形式) 一个可选的name参数  ''' 正则字符串参数 1 简单配置 from django.conf.urls...(通过圆括号)来捕获URL 中的值并以位置 参数传递给视图。...在更高级的用法中,可以使用命名的正则表达式组来捕获URL 中的值并以关键字 参数传递给视图。 在Python 正则表达式中,命名正则表达式组的语法是(?...P[0-9]{2})/$', views.article_detail), ] 这个实现与前面的示例完全相同,只有一个细微的差别:捕获的值作为关键字参数而不是位置参数传递给视图函数。...根据Django 视图的标识和将要传递给它的参数的值,获取与之关联的URL。 反向解析URL、反向URL 匹配、反向URL 查询或者简单的URL 反查。

    1.9K90

    Python进阶27-Django 路由层

    (ret.group('year')) 上面的示例使用简单的、没有命名的正则表达式组(通过圆括号)来捕获URL 中的值并以位置 参数传递给视图。...在更高级的用法中,可以使用命名的正则表达式组来捕获URL 中的值并以关键字 参数传递给视图。 在Python 正则表达式中,命名正则表达式组的语法是(?...,不要混用 反向解析 ---- 反向解析介绍 在使用Django 项目时,一个常见的需求是获得URL 的最终形式,以用于嵌入到生成的内容中(视图中和显示给用户的URL等)或者用于处理服务器端的导航(重定向等...Pid>[a-zA-Z0-9]+)/delete/', delete_view), ] 考虑下这样的两个问题: 第一个问题,函数 year_archive 中year参数是字符串类型的...变量值,以供Django传递到对应的视图函数中。

    1.5K30

    Pycharm开发Django项目URL分发器

    那么如何在django中实现这种需求呢。这时候我们可以在path函数中,使用尖括号的形式来定义一个参数。比如我现在想要获取一本书籍的详细信息,那么应该在url中指定这个参数。...id=1即可将参数传递过去。 URL中包含另外一个urls模块: 在我们的项目中,不可能只有一个app,如果把所有的app的views中的视图都放在urls.py中进行映射,肯定会让代码显得非常乱。...这个参数中可以指定url中需要传递的参数,比如在访问文章详情页的时候,可以传递一个id。传递参数是通过尖括号来进行指定的。...并且在传递参数的时候,可以指定这个参数的数据类型,比如文章的id都是int类型,那么可以这样写id>,以后匹配的时候,就只会匹配到id为int类型的url,而不会匹配其他的url,并且在视图函数中获取这个参数的时候...name参数:这个参数是给这个url取个名字的,这在项目比较大,url比较多的时候用处很大。 kwargs参数:有时候想给视图函数传递一些额外的参数,就可以通过kwargs参数进行传递。

    1.1K10

    02.Django基础二之URL路由系统

    配置文件中默认没有 APPEND_SLASH 这个参数,但 Django 默认这个参数为 APPEND_SLASH = True。...在更高级的用法中,可以使用分组命名匹配的正则表达式组来捕获URL中的值并以关键字参数形式传递给视图。   在Python的正则表达式中,分组命名正则表达式组的语法是(?...P[0-9]{2})/$', views.article_detail), #某年某月某日的 ]   这个实现与前面的示例完全相同,只有一个细微的差别:捕获的值作为关键字参数而不是位置参数传递给视图函数...捕获的参数永远都是字符串   每个在URLconf中捕获的参数都作为一个普通的Python字符串传递给视图,无论正则表达式使用的是什么匹配方式。...P[0-9]{4})/$', views.year_archive),   传递到视图函数views.year_archive() 中的year 参数永远是一个字符串类型。

    2K20

    Django之URL(路由系统)用法

    如果是简单捕获,那么捕获值将作 为一个位置参数进行传递,如果是命名捕获,那么将作为关键字参数进行传递。 kwargs: 任意数量的关键字参数可以作为一个字典传递给目标视图。...在views.host中需要指定一个形式参数来接受(\d+)\ 的值 def user_list(request,id): return HttpResponse(id) \^host_list/(\...Django项目中,我们经常会遇到要在视图中返回一个重定向到具体URL的响应,或者要将具体的URL地址嵌入到HTML页面中(如:a标签的href属性等)的情况。...模板中超链接步骤 1)在项目urls.py中为include定义namespace属性。...(reverse('booktest:fan2')) 反向解析中URL的参数 位置参数 1)在booktest/urls.py中,修改fan2如下: url(r’^fan(\d+)_(\d+)/$’,

    2.4K10

    Django路由控制URL详解

    依次匹配每个URL模式,在与请求的URL相匹配的第一个模式停下来。也就是说,url匹配是从上往下的短路操作,所以url在列表中的位置非常关键。...关键字参数由正则表达式匹配的命名组组成,但是可以被django.conf.urls.url()的可选参数kwargs覆盖。...3.3 有名分组 上面的示例使用简单的、没有命名的正则表达式组(通过圆括号)来捕获URL 中的值并以位置 参数传递给视图。...在更高级的用法中,可以使用命名的正则表达式组来捕获URL 中的值并以关键字 参数传递给视图。 在Python 正则表达式中,命名正则表达式组的语法是(?...P[0-9]{2})/$', views.article_detail), ] 这个实现与前面的示例完全相同,只有一个细微的差别:捕获的值作为关键字参数而不是位置参数传递给视图函数。

    1.6K20

    Django的URL路由系统

    (1) 正则表达式: 一个正则表达式字符串   (2) views视图函数: 一个可调用的对象,通常为一个视图函数或一个指定视图函数路径的字符串   (3) 参数: 可选的要传递给视图函数的默认参数...在更高级的用法中,可以使用分组命名匹配的正则表达式组来捕获URL中的值并以关键字参数形式传递给视图.   在Python的正则表达式中,分组命名正则表达式组的语法(?...P[0-9]{2})/$', views.article_detail), #某年某月某日的 ]   这个实现与前面的示例完全相同,只有一个细微的差别:捕获的值作为关键字参数而不是位置参数传递给试图函数...P[0-9]{4})/$', views.year_archive),     传递到试图函数views.year_archive()中的year参数永远是一个字符串类型....' %} #模板选择的时候,被django解析成了这个名字对应的url,这个过程叫做反向解析   在views函数中可以这样引用:(后面再讲这个视图函数应用反向解析的内容,上面的是模板应用反向解析的过程

    2.1K40

    【愚公系列】2022年01月 Python教学课程 45-Django框架之路由命名和反解析

    1.在使用include函数定义路由时,可以使用namespace参数定义路由的命名空间,如 re_path(r'^',include('book.urls',namespace='book')) 命名空间表示...2.在定义普通路由时,可以使用name参数指明路由的名字,如 urlpatterns = [ re_path(r'^$',index), # 匹配书籍列表信息的URL,调用对应的bookList...P[0-9]{4})/$", views.login, name="login") return redirect(reverse("login",kwargs={"year":3333})...) 3.在模板 templates 中的 HTML 文件中,利用 {% url “路由别名” %} 反向解析 无名反向解析 反向解析,当路由层 url 发生改变,在视图层和模板层动态反向解析出更改后的 url,免去修改的操作。 反向解析一般用在模板中的超链接及视图中的重定向。

    87830

    04路由层反向解析-名称空间-路径转换器

    /page/1/# 在视图函数中,接收到路由中传入的任意数字是 用 可变长位置参数接受的 可以在视图函数上面有一个任意名字的位置参数接收到'''def page(request,id): # id 是可以改成任意的参数名的...P<id>\d+)/",is_page)# # http://127.0.0.1:8000/page/1/# 在视图函数中,接收到路由中传入的任意数字是 用 可变长关键字参数接受的 在视图函数中必须用指定的关键字接收到参数...: 按照位置传递参数 # kwargs :按照关键字传递参数 id = kwargs.get("id") # http://127.0.0.1:8000/parse_name_redirect...",kwargs={"id":"1"}) # 有几个参数传入几个参数# reverse("parse_name_redirect",kwargs={"name":"1"}) # 报错 找不到 name...",kwargs={"id":"1"}) # 报错 在路由定义的时候缺少关键字总结# 【总结】# 后端 无名分组 直接用 args 传参数# 后端 有名分组 直接用 args 传参数 / 用 kwargs

    23700

    django中url路由配置及渲染方式

    ’)  在url.py中为视图函数配置路由 from django.urls import path from ....    3、按顺序运行每一个,到第一个匹配的模式停止     4、一旦匹配,django导入并调用给定的视图     5、如果没有匹配到,或者中间出错,则返回404 3、path里参数的含义     path...)额外参数,是字典类型,传递给view name     :(可有可无)url名字 4、在url中捕获参数    尖括号   参数  > 可以捕获参数,传递给视图   本来捕获的值是字符串   ...P[0-9]|1[0-2])/',plan),   年  四位数,月  0-9 或者1和0-2 第二种是不分组的,在视图中安位置传参 re_path(r'plan/(\d{4})\([0...8、传递额外参数   当在路由中传入额外参数时,如果kwargs中key值与捕获参数不一致,按照kwargs为准。 ? ? ?

    3.8K20
    领券