mirror of
https://github.com/encode/django-rest-framework.git
synced 2025-01-24 00:04:16 +03:00
Version 2.3.14
This commit is contained in:
parent
3dcc6585d2
commit
1386767013
|
@ -1,5 +1,3 @@
|
||||||
<a class="github" href="negotiation.py"></a>
|
|
||||||
|
|
||||||
# Content negotiation
|
# Content negotiation
|
||||||
|
|
||||||
> HTTP has provisions for several mechanisms for "content negotiation" - the process of selecting the best representation for a given response when there are multiple representations available.
|
> HTTP has provisions for several mechanisms for "content negotiation" - the process of selecting the best representation for a given response when there are multiple representations available.
|
||||||
|
|
|
@ -40,24 +40,28 @@ You can determine your currently installed version using `pip freeze`:
|
||||||
|
|
||||||
## 2.3.x series
|
## 2.3.x series
|
||||||
|
|
||||||
### 2.3.x
|
### 2.3.14
|
||||||
|
|
||||||
**Date**: April 2014
|
**Date**: 12th June 2014
|
||||||
|
|
||||||
* Fix nested serializers linked through a backward foreign key relation
|
* **Security fix**: Escape request path when it is include as part of the login and logout links in the browsable API.
|
||||||
* Fix bad links for the `BrowsableAPIRenderer` with `YAMLRenderer`
|
* `help_text` and `verbose_name` automatically set for related fields on `ModelSerializer`.
|
||||||
* Add `UnicodeYAMLRenderer` that extends `YAMLRenderer` with unicode
|
* Fix nested serializers linked through a backward foreign key relation.
|
||||||
* Fix `parse_header` argument convertion
|
* Fix bad links for the `BrowsableAPIRenderer` with `YAMLRenderer`.
|
||||||
* Fix mediatype detection under Python3
|
* Add `UnicodeYAMLRenderer` that extends `YAMLRenderer` with unicode.
|
||||||
* Web browseable API now offers blank option on dropdown when the field is not required
|
* Fix `parse_header` argument convertion.
|
||||||
* `APIException` representation improved for logging purposes
|
* Fix mediatype detection under Python 3.
|
||||||
* Allow source="*" within nested serializers
|
* Web browseable API now offers blank option on dropdown when the field is not required.
|
||||||
* Better support for custom oauth2 provider backends
|
* `APIException` representation improved for logging purposes.
|
||||||
* Fix field validation if it's optional and has no value
|
* Allow source="*" within nested serializers.
|
||||||
* Add `SEARCH_PARAM` and `ORDERING_PARAM`
|
* Better support for custom oauth2 provider backends.
|
||||||
* Fix `APIRequestFactory` to support arguments within the url string for GET
|
* Fix field validation if it's optional and has no value.
|
||||||
* Allow three transport modes for access tokens when accessing a protected resource
|
* Add `SEARCH_PARAM` and `ORDERING_PARAM`.
|
||||||
* Fix `Request`'s `QueryDict` encoding
|
* Fix `APIRequestFactory` to support arguments within the url string for GET.
|
||||||
|
* Allow three transport modes for access tokens when accessing a protected resource.
|
||||||
|
* Fix `QueryDict` encoding on request objects.
|
||||||
|
* Ensure throttle keys do not contain spaces, as those are invalid if using `memcached`.
|
||||||
|
* Support `blank_display_value` on `ChoiceField`.
|
||||||
|
|
||||||
### 2.3.13
|
### 2.3.13
|
||||||
|
|
||||||
|
|
|
@ -8,7 +8,7 @@ ______ _____ _____ _____ __ _
|
||||||
"""
|
"""
|
||||||
|
|
||||||
__title__ = 'Django REST framework'
|
__title__ = 'Django REST framework'
|
||||||
__version__ = '2.3.13'
|
__version__ = '2.3.14'
|
||||||
__author__ = 'Tom Christie'
|
__author__ = 'Tom Christie'
|
||||||
__license__ = 'BSD 2-Clause'
|
__license__ = 'BSD 2-Clause'
|
||||||
__copyright__ = 'Copyright 2011-2014 Tom Christie'
|
__copyright__ = 'Copyright 2011-2014 Tom Christie'
|
||||||
|
|
|
@ -122,7 +122,7 @@ def optional_login(request):
|
||||||
except NoReverseMatch:
|
except NoReverseMatch:
|
||||||
return ''
|
return ''
|
||||||
|
|
||||||
snippet = "<a href='%s?next=%s'>Log in</a>" % (login_url, request.path)
|
snippet = "<a href='%s?next=%s'>Log in</a>" % (login_url, escape(request.path))
|
||||||
return snippet
|
return snippet
|
||||||
|
|
||||||
|
|
||||||
|
@ -136,7 +136,7 @@ def optional_logout(request):
|
||||||
except NoReverseMatch:
|
except NoReverseMatch:
|
||||||
return ''
|
return ''
|
||||||
|
|
||||||
snippet = "<a href='%s?next=%s'>Log out</a>" % (logout_url, request.path)
|
snippet = "<a href='%s?next=%s'>Log out</a>" % (logout_url, escape(request.path))
|
||||||
return snippet
|
return snippet
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user