123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149 |
- ======================================
- ``django.conf.urls`` utility functions
- ======================================
- .. module:: django.conf.urls
- static()
- ========
- .. function:: static.static(prefix, view=django.views.static.serve, **kwargs)
- Helper function to return a URL pattern for serving files in debug mode::
- 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()
- =====
- .. function:: url(regex, view, kwargs=None, name=None)
- ``urlpatterns`` should be a list of ``url()`` instances. For example::
- urlpatterns = [
- url(r'^index/$', index_view, name="main-view"),
- ...
- ]
- The ``kwargs`` parameter allows you to pass additional arguments to the view
- function or method. See :ref:`views-extra-options` for an example.
- See :ref:`Naming URL patterns <naming-url-patterns>` for why the ``name``
- parameter is useful.
- include()
- =========
- .. function:: include(module, namespace=None, app_name=None)
- include(pattern_list)
- include((pattern_list, app_namespace), namespace=None)
- include((pattern_list, app_namespace, instance_namespace))
- A function that takes a full Python import path to another URLconf module
- that should be "included" in this place. Optionally, the :term:`application
- namespace` and :term:`instance namespace` where the entries will be included
- into can also be specified.
- Usually, the application namespace should be specified by the included
- module. If an application namespace is set, the ``namespace`` argument
- can be used to set a different instance namespace.
- ``include()`` also accepts as an argument either an iterable that returns
- URL patterns, a 2-tuple containing such iterable plus the names of the
- application namespaces, or a 3-tuple containing the iterable and the names
- of both the application and instance namespace.
- :arg module: URLconf module (or module name)
- :arg namespace: Instance namespace for the URL entries being included
- :type namespace: string
- :arg app_name: Application namespace for the URL entries being included
- :type app_name: string
- :arg pattern_list: Iterable of :func:`django.conf.urls.url` instances
- :arg app_namespace: Application namespace for the URL entries being included
- :type app_namespace: string
- :arg instance_namespace: Instance namespace for the URL entries being included
- :type instance_namespace: string
- See :ref:`including-other-urlconfs` and :ref:`namespaces-and-include`.
- .. deprecated:: 1.9
- Support for the ``app_name`` argument is deprecated and will be removed in
- Django 2.0. Specify the ``app_name`` as explained in
- :ref:`namespaces-and-include` instead.
- Support for passing a 3-tuple is also deprecated and will be removed in
- Django 2.0. Pass a 2-tuple containing the pattern list and application
- namespace, and use the ``namespace`` argument instead.
- Lastly, support for an instance namespace without an application namespace
- has been deprecated and will be removed in Django 2.0. Specify the
- application namespace or remove the instance namespace.
- handler400
- ==========
- .. data:: handler400
- A callable, or a string representing the full Python import path to the view
- that should be called if the HTTP client has sent a request that caused an error
- condition and a response with a status code of 400.
- By default, this is ``'django.views.defaults.bad_request'``. If you
- implement a custom view, be sure it returns an
- :class:`~django.http.HttpResponseBadRequest`.
- See the documentation about :ref:`the 400 (bad request) view
- <http_bad_request_view>` for more information.
- handler403
- ==========
- .. data:: handler403
- A callable, or a string representing the full Python import path to the view
- that should be called if the user doesn't have the permissions required to
- access a resource.
- By default, this is ``'django.views.defaults.permission_denied'``. If you
- implement a custom view, be sure it returns an
- :class:`~django.http.HttpResponseForbidden`.
- See the documentation about :ref:`the 403 (HTTP Forbidden) view
- <http_forbidden_view>` for more information.
- handler404
- ==========
- .. data:: handler404
- A callable, or a string representing the full Python import path to the view
- that should be called if none of the URL patterns match.
- By default, this is ``'django.views.defaults.page_not_found'``. If you
- implement a custom view, be sure it returns an
- :class:`~django.http.HttpResponseNotFound`.
- See the documentation about :ref:`the 404 (HTTP Not Found) view
- <http_not_found_view>` for more information.
- handler500
- ==========
- .. data:: handler500
- A callable, or a string representing the full Python import path to the view
- that should be called in case of server errors. Server errors happen when you
- have runtime errors in view code.
- By default, this is ``'django.views.defaults.server_error'``. If you
- implement a custom view, be sure it returns an
- :class:`~django.http.HttpResponseServerError`.
- See the documentation about :ref:`the 500 (HTTP Internal Server Error) view
- <http_internal_server_error_view>` for more information.
|