首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

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

如果没有匹配到正则表达式,或者如果过程抛出一个异常,Django 将调用一个适当的错误处理视图。请参见下面的错误处理。.../articles/2005/3/ 不匹配任何URL 模式,因为列表的第三个模式要求月份应该是两个数字。...在上面的例子,两个URL模式指向同一个视图views.page —— 但是第一个模式不会从URL 捕获任何值。如果第一个模式匹配,page() 函数将使用num参数的默认值”1”。...完整的细节请参见自定义错误视图。 这些值可以在你的根URLconf 设置。在其它URLconf 设置这些变量将不会生效果。...它们的值必须是可调用的或者是表示视图的Python 完整导入路径的字符串,可以方便地调用它们来处理错误情况。

1.2K20

Django url 反向解析 和 命令空间

如果请求的URL没有匹配到任何一个正则表达式,或者在匹配过程的任何时刻抛出了一个异常,那么Django 将调用适当的错误处理视图进行处理。请参见下面的错误处理。.../articles/2005/3/ 不匹配任何URL 模式,因为列表的第三个模式要求月份应该是两个数字。...在上面的例子,两个URL模式指向同一个视图views.page —— 但是第一个模式不会从URL 捕获任何值。如果第一个模式匹配,page() 函数将使用num参数的默认值"1"。...完整的细节请参见自定义错误视图。 这些值可以在你的根URLconf 设置。在其它URLconf 设置这些变量将不会产生效果。...它们的值必须是可调用的或者是表示视图的Python 完整导入路径的字符串,可以方便地调用它们来处理错误情况。

2.4K30
您找到你想要的搜索结果了吗?
是的
没有找到

Django路由控制URL详解

依次匹配每个URL模式,在与请求的URL相匹配的第一个模式停下来。也就是说,url匹配是从上往下的短路操作,所以url在列表的位置非常关键。...如果没有匹配到正则表达式,或者过程抛出异常,将调用一个适当的错误处理视图。 3....注意,这个例子的正则表达式没有包含$(字符串结束匹配符),但是包含一个末尾的斜杠。...人们强烈希望不要硬编码这些URL(费力、不可扩展且容易产生错误)或者设计一种与URLconf 毫不相关的专门的URL 生成机制,因为这样容易导致一定程度上产生过期的URL。...定义相同的name时,可能会导致URL反解错误,为了避免这种事情发生,引入了命名空间。

1K20

django 1.8 官方文档翻译: 1-2-3 编写你的第一个Django应用,第3部分

URLconf 是将 URL 模式 ( 由正则表达式来描述的 ) 映射到视图的一种配置。...它可以生成一个 PDF 文件,输出 XML , 即时创建 ZIP 文件, 你可以使用你想用的任何 Python 库来做你想做的任何事。...Django 的 TEMPLATE_LOADERS 配置包含一个知道如何从各种来源导入模板的可调用的方法列表。...Django 会根据你的 root URLconf ( 仅在你的 root URLconf ;在其他任何地方设置 handler404 都无效 )设置的 handler404 变量来查找该视图,这个变量是个...编写一个 500 ( 服务器错误 ) 视图 类似的,你可以在 root URLconf 定义 handler500 变量,在服务器发生错误时 调用它指向的视图。

1.8K50

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

一些请求的例子: /articles/2005/3/ 不匹配任何URL 模式,因为列表的第三个模式要求月份应该是两个数字。...在实际应用,这意味你的URLconf 会更加明晰且不容易产生参数顺序问题的错误 —— 你可以在你的视图函数定义重新安排参数的顺序。...page=3 请求URLconf 仍将查找myapp/。 URLconf 不检查请求的方法。...在上面的例子,两个URL模式指向同一个视图views.page —— 但是第一个模式不会从URL 捕获任何值。如果第一个模式匹配,page() 函数将使用num参数的默认值"1"。...命名URL 模式 为了完成上面例子的URL 反查,你将需要使用命名的URL 模式。URL 的名称使用的字符串可以包含任何你喜欢的字符。不只限制在合法的Python 名称。

1.3K90

Django基础教程

实际应用,这意味你的URLconf会更加明晰且不容易产生参数顺序问题的错误--你可以在你的视图函数定义重新安排参数的顺序。当然,这些好处是以简介为代价;有些开发人员认为命名组语法丑陋且繁琐。...在上面的例子,两个URL模式指向同一个视图views.page ---- 但是第一个模式不会从URL捕获任何值。如果第一个模式匹配,page()函数将使用num参数的默认值‘1’。...响应可以是一张网页的HTML内容,一个重定向,一个404错误,一个XML文档,或者一张图片。。。是任何东西都可以。无论视图本身包含什么逻辑,都要响应返回。...必须还要写在login,代码重复,没有解耦...换句话说,任何处在继承树上的模板都可以访问到你传到模板的每一个模板变量。你可以根据需要使用任意多的继承次数。

7.4K20

【愚公系列】2021年12月 Python教学课程 35-Django框架之视图和URL

响应可以是一张网页的HTML内容,一个重定向,一个404错误,一个XML文档,或者一张图片。 无论视图本身包含什么逻辑,都要返回响应。代码写在哪里也无所谓,只要它在你当前项目目录下面。...除此之外没有更多的要求了——可以说“没有什么神奇的地方”。为了将代码放在某处,大家约定成俗将视图放置在项目(project)或应用程序(app)目录的名为views.py的文件。...需要导入HttpResponse模块 :from django.http import HttpResponse 定义视图函数 : 响应字符串index给客户端 from django.shortcuts...查找视图的过程 : 1.请求者在浏览器地址栏输入URL, 请求到网站. 2.网站获取URL信息. 3.然后与编写好的URLconf逐条匹配. 4.如果匹配成功则调用对应的视图. 5.如果所有的URLconf...都没有匹配成功.则返回404错误.

39040

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

基本格式   from django.conf.urls import url #循环urlpatterns,找到对应的函数执行,匹配上一个路径就找到对应的函数执行,就不再往下循环了,并给函数传一个参数...在实际应用,使用分组命名匹配的方式可以让你的URLconf 更加明晰且不容易产生参数顺序问题的错误,但是有些开发人员则认为分组命名组语法太丑陋、繁琐。   ...,两个URL模式指向相同的view - views.page - 但是第一个模式没有从URL捕获任何东西。   ...人们强烈希望不要硬编码(其实就是在标签里面写死了路径,凡是写死了的代码就是硬编码)这些URL(费力、不可扩展且容易产生错误)或者设计一种与URLconf 毫不相关的专门的URL 生成机制,因为这样容易导致一定程度上产生过期的...注意:   为了完成上面例子的URL 反查,你将需要使用命名的URL 模式。URL 的名称使用的字符串可以包含任何你喜欢的字符。不只限制在合法的Python 名称。

1.5K20

Django之路由系统

使用分组命名匹配的方式可以让你的URLconf 更加明晰且不容易产生参数顺序问题的错误,但是有些开发人员则认为分组命名组语法太丑陋、繁琐。...,两个URL模式指向相同的view - views.page - 但是第一个模式没有从URL捕获任何东西。   ...人们强烈希望不要硬编码这些URL(费力、不可扩展且容易产生错误)或者设计一种与URLconf 毫不相关的专门的URL 生成机制,因为这样容易导致一定程度上产生过期的URL。...在更高层的与处理Django 模型实例相关的代码:使用get_absolute_url() 方法。   上面说了一大堆,你可能并没有看懂。(那是官方文档的生硬翻译)。...注意:   为了完成上面例子的URL 反查,你将需要使用命名的URL 模式。URL 的名称使用的字符串可以包含任何你喜欢的字符。不只限制在合法的Python 名称。

1.1K70

·编写你的第一个 Django 应用-第 1 部分

你的应用可以存放在任何 Python path 定义的路径。在这个教程,我们将在你的 manage.py 同级目录下创建投票应用。这样它就可以作为顶级模块导入,而不是 mysite 的子模块。...因为投票应用有它自己的 URLconf( polls/urls.py ),他们能够被放在 "/polls/" , "/fun_polls/" ,"/content/polls/",或者其他任何路径下,这个应用都能够正常工作...何时使用 include() 当包括其它 URL 模式时你应该总是使用 include() , admin.site.urls 是唯一例外。 你现在把 index 视图添加进了 URLconf。...没有找到页面? 如果你在这里得到了一个错误页面,检查一下你是不是正访问着http://localhost:8000/polls/ 而不应该是 http://localhost:8000/。...这个有用的特性允许你只改一个文件就能全局地修改某个 URL 模式。 当你了解了基本的请求和响应流程后,请阅读 教程的第 2 部分 开始使用数据库.

1.3K30

django之urls系统

page=3 请求URLconf 仍将查找myapp/。 URLconf 不检查请求的方法。...,两个URL模式指向相同的view - views.page - 但是第一个模式没有从URL捕获任何东西。...人们强烈希望不要硬编码这些URL(费力、不可扩展且容易产生错误)或者设计一种与URLconf 毫不相关的专门的URL 生成机制,因为这样容易导致一定程度上产生过期的URL。...在更高层的与处理Django 模型实例相关的代码:使用get_absolute_url() 方法。 上面说了一大堆,你可能并没有看懂。(那是官方文档的生硬翻译)。...注意: 为了完成上面例子的URL 反查,你将需要使用命名的URL 模式。URL 的名称使用的字符串可以包含任何你喜欢的字符。不只限制在合法的Python 名称。

1.3K70

django 1.8 官方文档翻译: 3-2-1 内建的视图

django.contrib.staticfiles 用于静态文件且没有对用户上传的文件做处理,但是你可以通过在URLconf 添加一些内容来让Django 作为MEDIA_ROOT 的服务器: from...因为定义这个URL 模式显得有些笨拙,Django 提供一个小巧的URL 辅助函数static(),它接收MEDIA_URL这样的参数作为前缀和视图的路径如'django.views.static.serve...其它任何函数参数都将透明地传递给视图。 错误视图 Django 原生自带几个默认视图用于处理HTTP 错误。若要使用你自定义的视图覆盖它们,请参见自定义错误视图。...关于404 视图需要注意的3点: 如果Django 在检测URLconf 的每个正则表达式后没有找到匹配的内容也将调用404 视图。...如果DEBUG 设置为True(在你的settings 模块),那么将永远不会调用404 视图,而是显示你的URLconf 并带有一些调试信息。

1.1K10

django 1.8 官方文档翻译: 1-2-4 编写你的第一个Django应用,第4部分

forloop.counter 表示 for 标签在循环中已经循环过的次数 由于我们要创建一个POST form ( 具有修改数据的功能 ),我们需要担心跨站点请求伪造 ( Cross Site Request...在 教程 第3部分 ,我们为 polls 应用创建了一个 URLconf 配置包含有这一行代码: url(r'^(?...它指定了我们想要的跳转的视图函数名以及视图函数 URL 模式相应的可变参数。...在本例,我们使用了教程 第3部分URLconf 配置, reverse() 将会返回类似如下所示的字符串 '/polls/3/results/' … 在此 3 就是 p.id 的值。... 现在,在浏览器访问 /polls/1/ 并完成投票。每次投票后你将会看到结果页数据都有更新。 如果你没有选择投票选项就提交了,将会看到错误的信息。

1.4K10

Python笔记:Django框架做web开发(二)

创建投票应用 要创建应用程序,请确保进入与manage.py文件位于同一目录: ?...要调用视图,我们需要将其映射到URL - 为此我们需要一个URLconf文件。 要在polls目录创建URLconf,请创建一个名为的文件urls.py。...因为投票应用有它自己的 URLconf( polls/urls.py ),他们能够被放在 “/polls/“ , “/fun_polls/“ ,”/content/polls/“,或者其他任何路径下,这个应用都能够正常工作...输入http://127.0.0.1:8000/网址访问,会出现以下错误信息: ?...View视图,当Django找到匹配的模式时,它调用指定的视图函数,其中一个HttpRequest对象作为第一个参数,并且路由中的任何“捕获”值作为关键字参数。

71010

Django学习之十一:真正理解Djan

模式概念 Django的URL 模式非常的清晰和优雅。一个高质量的web应用就需要一个好的URL模式。...一般命名上都叫urls.py 每一个django项目,都有一个唯一的叫root_urlconf的url module.这个ROOT_URLCONF时可以配置的放在项目的settings.py。...然后再对列表的进行循环匹配过程,一直嵌套下去,知道最后的return跳出返回一个ResolverMatch对象。而urlpattern的resolver直接就返回ResovlerMatch对象了。...大致可以这样理解: 首先,如果reverse或者 url tag(in Template file) ,只是提供了'name' url对象实例化是的name参数,那么反解逻辑很简单.直接循环一个记录字典中找到...1.3 如果没有,django会使用最后部署的instance作为解析name的对象。

78210
领券