django.conf.urls 工具函数

static()

静态的。staticprefixview = django.views.static.serve** kwargs¶ T4>

帮助函数返回在调试模式下提供文件的网址格式:

from django.conf import settings
from django.conf.urls.static import static

urlpatterns = [
    # ... the rest of your URLconf goes here ...
] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

url()

url(regex, view, kwargs=None, name=None)[source]

urlpatterns应该是url()实例的列表。 像这样:

from django.conf.urls import include, url

urlpatterns = [
    url(r'^index/$', index_view, name='main-view'),
    url(r'^weblog/', include('blog.urls')),
    ...
]

regex 参数应该是一个包含正则表达式的字符串或 ugettext_lazy() 对象(参考 Translating URL patterns), regex参数必须兼容python的re模块。 字符串通常使用原始字符串语法(r''),以便它们可以包含诸如\d的序列,而不需要使用另一个反斜杠转义反斜杠。

view参数是用于基于类视图的视图函数或as_view()的结果。 它也可以是一个include()

kwargs参数允许您将其他参数传递给视图函数或方法。 有关示例,请参见Passing extra options to view functions

有关为什么name参数有用,请参阅Naming URL patterns

include()

includemodulenamespace = Noneapp_name = None[source] ¶ T6>
includepattern_list
include(pattern_listapp_namespace)namespace = None
include(pattern_listapp_namespaceinstance_namespace)

一个函数需要一个完整的Python导入路径到另一个URLconf模块,应该“包括”在这个地方。 或者,也可以指定要包含条目的application namespaceinstance namespace

通常,应用程序命名空间应由包含的模块指定。 如果设置了应用程序命名空间,则namespace参数可用于设置不同的实例命名空间。

include()也接受一个参数,一个可以返回URL模式的迭代,一个包含这种迭代的二元组加上应用程序命名空间的名称,或者包含iterable的3元组,应用程序和实例命名空间。

参数:
  • 模块 - URLconf模块(或模块名称)
  • 命名空间string) - 包含的URL条目的实例命名空间
  • app_namestring) - 包含的URL条目的应用程序命名空间
  • pattern_list - 可迭代的django.conf.urls.url()实例
  • app_namespacestring) - 包含的URL条目的应用程序命名空间
  • instance_namespacestring) - 包含的URL条目的实例命名空间

请参阅Including other URLconfsURL namespaces and included URLconfs

自1.9版以来已弃用 支持app_name参数已被弃用,将在Django 2.0中删除。 指定app_name,如URL namespaces and included URLconfs

支持传递一个3元组也被弃用,将在Django 2.0中被删除。 传递包含模式列表和应用程序命名空间的2元组,并使用namespace参数。

最后,不支持使用没有应用程序命名空间的实例名称空间已被弃用,并将在Django 2.0中被删除。 指定应用程序命名空间或删除实例命名空间。

handler400

handler400

如果HTTP客户端已发送导致错误条件的请求和状态代码为400的响应,则应调用的可调用或表示完整的Python视图导入路径的字符串。

默认情况下,这是'django.views.defaults.bad_request' 如果您实现自定义视图,请确保它返回一个HttpResponseBadRequest

有关详细信息,请参阅有关the 400 (bad request) view的文档。

handler403

handler403

一个callable或一个字符串,表示如果用户没有访问资源所需的权限,应调用的视图的完整Python导入路径。

默认情况下,这是'django.views.defaults.permission_denied' 如果您实现自定义视图,请确保它返回一个HttpResponseForbidden

有关详细信息,请参阅有关the 403 (HTTP Forbidden) view的文档。

handler404

handler404

一个callable或一个字符串,表示如果没有URL模式匹配,应该调用的视图的完整Python导入路径。

默认情况下,这是'django.views.defaults.page_not_found' 如果实现自定义视图,请确保它返回一个HttpResponseNotFound

有关详细信息,请参阅有关the 404 (HTTP Not Found) view的文档。

handler500

handler500

一个可调用的或一个字符串,表示在服务器错误时应调用的视图的完整Python导入路径。 在视图代码中存在运行时错误时,会发生服务器错误。

默认情况下,这是'django.views.defaults.server_error' 如果您实现自定义视图,请确保它返回一个HttpResponseServerError

有关详细信息,请参阅有关the 500 (HTTP Internal Server Error) view的文档。