基于 Django1.10 文档的深入学习(27)—— django.conf.urls utility functions 之 url(),include(),static()

来源:互联网 发布:java zxing 二维码 编辑:程序博客网 时间:2024/06/06 03:13

django.conf.urls实用程序函数


static()

static.static(prefix, view=django.views.static.serve, **kwargs)

帮助器功能返回在调试模式下提供文件的URL模式:

from django.conf import settingsfrom django.conf.urls.static import staticurlpatterns = [    # ... 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()实例的列表。 例如:

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

regex参数应该是包含与Pythonre模块兼容的正则表达式的字符串或ugettext_lazy()(请参阅翻译URL模式)。 字符串通常使用原始字符串语法(r“),以便它们可以包含像\ d这样的序列,而不需要使用另一个反斜杠来转义反斜杠。

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

kwargs参数允许您将其他参数传递给视图函数或方法。 请参阅传递附加选项以查看示例的函数。


include()

include(module, namespace=None, app_name=None)[source]
include(pattern_list)
include((pattern_list, app_namespace), namespace=None)
include((pattern_list, app_namespace, instance_namespace))

一个完整的Python导入路径到另一个URLconf模块的功能,该模块应该在这个地方被“包含”。 或者,还可以指定要包括条目的应用程序命名空间和实例命名空间。

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

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

参数:

  • module - URLconf模块(或模块名称)
  • namespace (string) - 要包括的URL条目的实例命名空间
  • app_name(string) - 包含URL条目的应用程序命名空间
  • pattern_list - django.conf.urls.url()实例的Iterable
  • app_namespace(string) - 包含URL条目的应用程序命名空间
  • instance_namespace(string) - 要包括的URL条目的实例命名空间

handler400

handler400

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

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

有关详细信息,请参阅有关400(坏请求)视图的文档。


handler403

handler403

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

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

有关详细信息,请参阅有关403(HTTP禁止)视图的文档。


handler404

handler404

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

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

有关详细信息,请参阅有关404(未找到HTTP的)视图的文档。


handler500

handler500

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

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

有关详细信息,请参阅有关500(HTTP内部服务器错误)视图的文档。


1 0
原创粉丝点击