1
0
mirror of https://github.com/django/django.git synced 2025-10-24 14:16:09 +00:00

Fixed #10190 -- Made HttpResponse charset customizable.

Thanks to Simon Charette, Aymeric Augustin, and Tim Graham
for reviews and contributions.
This commit is contained in:
Unai Zalakain
2013-11-16 18:54:12 +01:00
committed by Tim Graham
parent 9d6551204e
commit 5f2542f12a
7 changed files with 125 additions and 18 deletions

View File

@@ -627,6 +627,15 @@ Attributes
A bytestring representing the content, encoded from a Unicode
object if necessary.
.. attribute:: HttpResponse.charset
.. versionadded:: 1.8
A string denoting the charset in which the response will be encoded. If not
given at ``HttpResponse`` instantiation time, it will be extracted from
``content_type`` and if that is unsuccessful, the
:setting:`DEFAULT_CHARSET` setting will be used.
.. attribute:: HttpResponse.status_code
The `HTTP status code`_ for the response.
@@ -645,7 +654,7 @@ Attributes
Methods
-------
.. method:: HttpResponse.__init__(content='', content_type=None, status=200, reason=None)
.. method:: HttpResponse.__init__(content='', content_type=None, status=200, reason=None, charset=None)
Instantiates an ``HttpResponse`` object with the given page content and
content type.
@@ -666,6 +675,14 @@ Methods
``reason`` is the HTTP response phrase. If not provided, a default phrase
will be used.
``charset`` is the charset in which the response will be encoded. If not
given it will be extracted from ``content_type``, and if that
is unsuccessful, the :setting:`DEFAULT_CHARSET` setting will be used.
.. versionadded:: 1.8
The ``charset`` parameter was added.
.. method:: HttpResponse.__setitem__(header, value)
Sets the given header name to the given value. Both ``header`` and

View File

@@ -56,7 +56,7 @@ Attributes
Methods
-------
.. method:: SimpleTemplateResponse.__init__(template, context=None, content_type=None, status=None)
.. method:: SimpleTemplateResponse.__init__(template, context=None, content_type=None, status=None, charset=None)
Instantiates a
:class:`~django.template.response.SimpleTemplateResponse` object
@@ -80,6 +80,15 @@ Methods
``content_type`` is specified, then its value is used. Otherwise,
:setting:`DEFAULT_CONTENT_TYPE` is used.
``charset``
The charset in which the response will be encoded. If not given it will
be extracted from ``content_type``, and if that is unsuccessful, the
:setting:`DEFAULT_CHARSET` setting will be used.
.. versionadded:: 1.8
The ``charset`` parameter was added.
.. method:: SimpleTemplateResponse.resolve_context(context)
Converts context data into a context instance that can be used for
@@ -140,7 +149,7 @@ TemplateResponse objects
Methods
-------
.. method:: TemplateResponse.__init__(request, template, context=None, content_type=None, status=None, current_app=None)
.. method:: TemplateResponse.__init__(request, template, context=None, content_type=None, status=None, current_app=None, charset=None)
Instantiates an ``TemplateResponse`` object with the given
template, context, MIME type and HTTP status.
@@ -173,6 +182,14 @@ Methods
:ref:`namespaced URL resolution strategy <topics-http-reversing-url-namespaces>`
for more information.
``charset``
The charset in which the response will be encoded. If not given it will
be extracted from ``content_type``, and if that is unsuccessful, the
:setting:`DEFAULT_CHARSET` setting will be used.
.. versionadded:: 1.8
The ``charset`` parameter was added.
The rendering process
=====================

View File

@@ -278,6 +278,9 @@ Requests and Responses
This brings this class into line with the documentation and with
``WSGIRequest``.
* The :attr:`HttpResponse.charset <django.http.HttpResponse.charset>` attribute
was added.
Tests
^^^^^