mirror of
				https://github.com/django/django.git
				synced 2025-10-31 09:41:08 +00:00 
			
		
		
		
	Fixed #3526 -- Added content_type as an alias for mimetype to the HttpResponse constructor. It's a slightly more accurate name. Based on a patch from Simon Willison. Fully backwards compatible.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@5844 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
		| @@ -212,18 +212,22 @@ class HttpResponse(object): | ||||
|  | ||||
|     status_code = 200 | ||||
|  | ||||
|     def __init__(self, content='', mimetype=None, status=None): | ||||
|     def __init__(self, content='', mimetype=None, status=None, | ||||
|             content_type=None): | ||||
|         from django.conf import settings | ||||
|         self._charset = settings.DEFAULT_CHARSET | ||||
|         if not mimetype: | ||||
|             mimetype = "%s; charset=%s" % (settings.DEFAULT_CONTENT_TYPE, settings.DEFAULT_CHARSET) | ||||
|         if mimetype: | ||||
|             content_type = mimetype     # For backwards compatibility | ||||
|         if not content_type: | ||||
|             content_type = "%s; charset=%s" % (settings.DEFAULT_CONTENT_TYPE, | ||||
|                     settings.DEFAULT_CHARSET) | ||||
|         if not isinstance(content, basestring) and hasattr(content, '__iter__'): | ||||
|             self._container = content | ||||
|             self._is_string = False | ||||
|         else: | ||||
|             self._container = [content] | ||||
|             self._is_string = True | ||||
|         self.headers = {'Content-Type': mimetype} | ||||
|         self.headers = {'Content-Type': content_type} | ||||
|         self.cookies = SimpleCookie() | ||||
|         if status: | ||||
|             self.status_code = status | ||||
|   | ||||
| @@ -342,7 +342,7 @@ hard-coded strings. If you use this technique, follow these guidelines: | ||||
| Methods | ||||
| ------- | ||||
|  | ||||
| ``__init__(content='', mimetype=DEFAULT_CONTENT_TYPE)`` | ||||
| ``__init__(content='', mimetype=None, status=200, content_type=DEFAULT_CONTENT_TYPE)`` | ||||
|     Instantiates an ``HttpResponse`` object with the given page content (a | ||||
|     string) and MIME type. The ``DEFAULT_CONTENT_TYPE`` is ``'text/html'``. | ||||
|  | ||||
| @@ -350,6 +350,16 @@ Methods | ||||
|     return strings, and those strings will be joined together to form the | ||||
|     content of the response. | ||||
|  | ||||
|     ``status`` is the `HTTP Status code`_ for the response. | ||||
|  | ||||
|     **(New in Django development version)** ``content_type`` is an alias for | ||||
|     ``mimetype``. Historically, the parameter was only called ``mimetype``, | ||||
|     but since this is actually the value included in the HTTP ``Content-Type`` | ||||
|     header, it can also include the character set encoding, which makes it | ||||
|     more than just a MIME type specification. If ``mimetype`` is specifiedi | ||||
|     (not None), that value is used.  Otherwise, ``content_type`` is used. If | ||||
|     neither is given, the ``DEFAULT_CONTENT_TYPE`` setting is used. | ||||
|  | ||||
| ``__setitem__(header, value)`` | ||||
|     Sets the given header name to the given value. Both ``header`` and | ||||
|     ``value`` should be strings. | ||||
| @@ -396,6 +406,8 @@ Methods | ||||
| ``write(content)``, ``flush()`` and ``tell()`` | ||||
|     These methods make an ``HttpResponse`` instance a file-like object. | ||||
|  | ||||
| .. _HTTP Status code: http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10 | ||||
|  | ||||
| HttpResponse subclasses | ||||
| ----------------------- | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user