Documented how to manually piece together URLs with get_script_name().
Thanks to timo and leovitch for the patch. Fixed #10328. git-svn-id: http://code.djangoproject.com/svn/django/trunk@13772 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
parent
7bb6abed12
commit
030c97b119
|
@ -1,3 +1,5 @@
|
||||||
|
.. _howto-deployment-modpython:
|
||||||
|
|
||||||
============================================
|
============================================
|
||||||
How to use Django with Apache and mod_python
|
How to use Django with Apache and mod_python
|
||||||
============================================
|
============================================
|
||||||
|
|
|
@ -35,6 +35,21 @@ All attributes except ``session`` should be considered read-only.
|
||||||
|
|
||||||
Example: ``"/music/bands/the_beatles/"``
|
Example: ``"/music/bands/the_beatles/"``
|
||||||
|
|
||||||
|
.. attribute:: HttpRequest.path_info
|
||||||
|
|
||||||
|
Under some web server configurations, the portion of the URL after the host
|
||||||
|
name is split up into a script prefix portion and a path info portion
|
||||||
|
(this happens, for example, when using the ``django.root`` option
|
||||||
|
with the :ref:`modpython handler from Apache <howto-deployment-modpython>`).
|
||||||
|
The ``path_info`` attribute always contains the path info portion of the
|
||||||
|
path, no matter what web server is being used. Using this instead of
|
||||||
|
attr:`~HttpRequest.path` can make your code much easier to move between test
|
||||||
|
and deployment servers.
|
||||||
|
|
||||||
|
For example, if the ``django.root`` for your application is set to
|
||||||
|
``"/minfo"``, then ``path`` might be ``"/minfo/music/bands/the_beatles/"``
|
||||||
|
and ``path_info`` would be ``"/music/bands/the_beatles/"``.
|
||||||
|
|
||||||
.. attribute:: HttpRequest.method
|
.. attribute:: HttpRequest.method
|
||||||
|
|
||||||
A string representing the HTTP method used in the request. This is
|
A string representing the HTTP method used in the request. This is
|
||||||
|
|
|
@ -926,3 +926,22 @@ permalink()
|
||||||
The :func:`django.db.models.permalink` decorator is useful for writing short
|
The :func:`django.db.models.permalink` decorator is useful for writing short
|
||||||
methods that return a full URL path. For example, a model's
|
methods that return a full URL path. For example, a model's
|
||||||
``get_absolute_url()`` method. See :func:`django.db.models.permalink` for more.
|
``get_absolute_url()`` method. See :func:`django.db.models.permalink` for more.
|
||||||
|
|
||||||
|
get_script_prefix()
|
||||||
|
-------------------
|
||||||
|
|
||||||
|
.. function:: get_script_prefix()
|
||||||
|
|
||||||
|
.. versionadded:: 1.0
|
||||||
|
|
||||||
|
Normally, you should always use :func:`~django.core.urlresolvers.reverse` or
|
||||||
|
:func:`~django.db.models.permalink` to define URLs within your application.
|
||||||
|
However, if your application constructs part of the URL hierarchy itself, you
|
||||||
|
may occasionally need to generate URLs. In that case, you need to be able to
|
||||||
|
find the base URL of the Django project within its web server
|
||||||
|
(normally, :func:`~django.core.urlresolvers.reverse` takes care of this for
|
||||||
|
you). In that case, you can call ``get_script_prefix()``, which will return the
|
||||||
|
script prefix portion of the URL for your Django project. If your Django
|
||||||
|
project is at the root of its webserver, this is always ``"/"``, but it can be
|
||||||
|
changed, for instance by using ``django.root`` (see :ref:`How to use
|
||||||
|
Django with Apache and mod_python <howto-deployment-modpython>`).
|
||||||
|
|
Loading…
Reference in New Issue