基于 Django1.10 文档的深入学习(27)—— django.conf.urls utility functions 之 url(),include(),static()
2017-05-01 20:45
639 查看
django.conf.urls
实用程序函数
static()
static.static(prefix, view=django.views.static.serve, **kwargs)
帮助器功能返回在调试模式下提供文件的
URL模式:
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()实例的列表。 例如:
urlpatterns = [ url(r'^index/$', index_view, name='main-view'), url(r'^weblog/', include('blog.urls')), ... ]
regex参数应该是包含与
Python的
re模块兼容的正则表达式的字符串或
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内部服务器错误)视图的文档。
相关文章推荐
- 基于 Django1.10 文档的深入学习(28)—— Managing static files(e.g. images, JavaScript, CSS)
- 基于 Django1.10 文档的深入学习(1)—— Settings.py 之 MEDIA_ROOT 与 MEDIA_URL
- 基于 Django1.10 文档的深入学习(29)——Built-in Views 之 static.serve()
- 基于 Django1.10 文档的深入学习(2)—— Settings.py 之 STATIC_*
- 基于 Django1.10 文档的深入学习(7)—— Configuring applications
- 基于 Django1.10 文档的深入学习(19)——Working with forms
- 基于 Django1.10 文档的深入学习(8)—— Model field reference 之 choices
- 基于 Django1.10 文档的深入学习(15)——django.contrib.auth.hashers
- 基于 Django1.10 文档的深入学习(16)——Authentication backends 之 class ModelBackend
- 基于 Django1.10 文档的深入学习(13)—— django.core.urlresolvers 之 reverse()
- 基于 Django1.10 文档的深入学习(3)—— models.py 之 FileField
- 基于 Django1.10 文档的深入学习(21)——The Forms API 之 Form.errors
- 基于 Django1.10 文档的深入学习(22)——Sending email 之 send_mail()
- 基于 Django1.10 文档的深入学习(10)—— django.contrib.auth 之 User model
- 基于 Django1.10 文档的深入学习(13)—— Making queries 之 Q objects
- 基于 Django1.10 文档的深入学习(6)—— Translation 之 short_description
- 基于 Django1.10 文档的深入学习(26)—— Creating forms from models 之 基础
- 基于 Django1.10 文档的深入学习(25)—— Applications 之 基础部分
- 基于 Django1.10 文档的深入学习(23)—— QuerySet API reference 之 icontains
- 基于 Django1.10 文档的深入学习(11)—— django.shortcuts 之 render()