Ian Cordasco
c2ee1b3033
Use overridden settings exception handler
...
Instead of using the api_settings exception handler, we use the
overridden settings attribute to find the correct handler.
Closes #5054
2017-04-06 14:05:29 -05:00
s-m-b
f1ca71ce21
Pass initkwargs stored on view to instance
2017-04-06 16:38:28 +04:00
htmis
4a54d9f474
Update Boolean field to more closely match python library
...
Python Reference:
distutils.util.strtobool(val)
Convert a string representation of truth to true (1) or false (0).
True values are y, yes, t, true, on and 1; false values are n, no, f, false, off and 0. Raises ValueError if val is anything else.
2017-03-29 20:21:18 -04:00
Xavier Ordoquy
d417c6d1b9
Fix parser names in docstring.
2017-03-29 07:57:14 +02:00
Ilya Beda
f27c551218
Fix typo at docstring
2017-03-29 12:51:01 +07:00
Ekluv
56fe0e4b3f
fix unique=True validation for ChoiceField
2017-03-28 00:38:21 +05:30
Xavier Ordoquy
6ad0be44d3
Merge remote-tracking branch 'reference/master' into feature/improve_schema_shortcut
...
* reference/master:
use django 1.11rc1 in tox
Leave parameters with regex pattern as String
restored original formatting
Do not hint BigAutoField as integer (outside of range)
Mention where the mixins live
Try to improve browser support
Cleanup and refactor docs api.js script
Move bootstrap modal data attrs to anchor
Remove unused base.js script
Correctly set scheme in coreapi TokenAuthentication
reverted to fix the issue without changing setting
DEFAULT_PAGINATION_CLASS is changed to 'None'
add content block and breadcrumbs_empty block to allow base.html to be reused
Update 7-schemas-and-client-libraries.md
Updated testimonial name on funding site
ID must start from 1 again
2017-03-24 15:21:43 +01:00
Tom Christie
0fdaf4f481
Merge pull request #5001 from jpadilla/docs-cleanup
...
JavaScript cleanup in API Docs.
2017-03-22 14:01:00 +00:00
Tom Christie
8e9cb1e614
Merge pull request #5014 from dczech/feature/decouple-bigautofield
...
Include URL path regexs in API schemas where valid.
2017-03-22 09:37:07 +00:00
Sergey Petrunin
b0a0c30bfe
Added pytz exception in compat module.
...
Mock pytz.timezone localize in tests.
Ref: #4986
2017-03-22 00:03:32 -04:00
Dariusz Czech
54d0901f38
Leave parameters with regex pattern as String
2017-03-21 15:15:20 +01:00
Dariusz Czech
9074e3e478
restored original formatting
2017-03-21 08:40:59 +01:00
Sergey Petrunin
e4a1bd140b
Update error message.
...
Ref: #4986
2017-03-20 18:47:25 -04:00
Dariusz Czech
c7e2d1d976
Do not hint BigAutoField as integer (outside of range)
2017-03-20 22:21:07 +01:00
Tom Christie
7d64cf568a
Merge pull request #4998 from COCOLMAN/master
...
Ensure that pagination is not included in API schema when `page_size=None`.
2017-03-20 15:32:44 +00:00
Sergey Petrunin
d4726dab81
Fix bug for not existent or ambiguous datetime during native to aware conversion in timezone with DST.
...
Ref: #4986
2017-03-18 23:13:26 -04:00
José Padilla
9e18d005d1
Try to improve browser support
2017-03-17 22:21:14 -04:00
José Padilla
b0f2ec785e
Cleanup and refactor docs api.js script
2017-03-17 21:44:40 -04:00
José Padilla
d8507d3f9c
Move bootstrap modal data attrs to anchor
2017-03-17 21:44:11 -04:00
José Padilla
be0e196e65
Remove unused base.js script
2017-03-17 21:43:20 -04:00
José Padilla
7e76cd8695
Correctly set scheme in coreapi TokenAuthentication
2017-03-17 20:27:36 -04:00
sol HYUN
16aad89459
reverted to fix the issue without changing setting
2017-03-18 06:17:35 +09:00
sol HYUN
9c3edb0921
DEFAULT_PAGINATION_CLASS is changed to 'None'
...
because the default value was specified, it did not work properly in API
Document
2017-03-18 04:50:01 +09:00
Jeff Johnson
323f59091c
add content block and breadcrumbs_empty block to allow base.html to be reused
2017-03-16 09:03:45 -04:00
Xavier Ordoquy
b558c9ecc4
Allow the documentation and schema shortcut functions to get a list of urls to introspect.
2017-03-15 08:07:12 +01:00
Tom Christie
3b466fabe7
Merge pull request #4973 from tomchristie/support-head-in-viewsets
...
Support HEAD in viewsets
2017-03-13 13:16:04 +00:00
Tom Christie
43b38964ea
Support HEAD in viewsets
2017-03-13 12:51:03 +00:00
Tom Christie
0173e9bd21
Use 'items' templatetag throughout.
2017-03-13 12:35:19 +00:00
Tom Christie
2df80c3c9d
Merge pull request #4688 from theosotr/feature-source
...
Support usage of 'source' in `extra_kwargs`.
2017-03-13 10:25:38 +00:00
Tom Christie
d508a3dd1e
Merge pull request #4967 from 0xKD/patch-2
...
Update coreapi.js version in JavaScript API docs.
2017-03-13 10:06:35 +00:00
Tom Christie
de9a8c4811
Fix mime type on schema.js endpoint. Closes #4968 .
2017-03-13 10:03:13 +00:00
Kedar
9e62bc51ec
Update coreapi.js version
2017-03-11 11:19:26 +05:30
Tom Christie
928f7cb40f
Version 3.6.2
2017-03-10 13:00:08 +00:00
Tom Christie
7a8fb262f2
Fallback to more widely supported JS feature sets. ( #4961 )
2017-03-10 12:07:15 +00:00
Tom Christie
9ccdc4366f
Merge branch 'master' of github.com:tomchristie/django-rest-framework
2017-03-10 10:59:39 +00:00
Tom Christie
9baa1fde15
Add 'mark_safe' in template tags. Closes #4952 . Closes #4953 .
2017-03-10 10:59:31 +00:00
Michael Palmer
81887bdc4e
Add glyphicon fonts to static docs ( #4951 )
...
* Fixes #4950 .
2017-03-10 10:37:31 +00:00
Tom Christie
f51bb5ac8b
Drop unneeded comment
2017-03-10 09:10:29 +00:00
Chris Carty
bc2c76a000
fixed issue on schemas.py where if model._meta.get_field(variable) failed model_field was not set to None and would reult in an error
2017-03-09 21:11:52 -05:00
Tom Christie
544b4b9948
Ensure 'markdown' dependancy is optional. Refs #4941 . ( #4947 )
2017-03-09 16:50:00 +00:00
Tom Christie
52db57a6e7
Version 3.6 ( #4943 )
2017-03-09 14:49:51 +00:00
Xavier Ordoquy
537df7a6ad
Extract APISchemaView and APIRootView out of the DefaultRouter. ( #4707 )
2017-03-07 13:39:08 +00:00
Tibo Beijen
cf5d401a0e
Allow required false and default ( #4692 )
...
* Default value will now be used when serializing if key or attribute is missing.
2017-03-07 13:19:19 +00:00
Tom Christie
68d2020112
Live API documentation ( #4755 )
2017-03-03 15:24:37 +00:00
Tim Watts
8df340908b
Add failing tests and fix for dict that have a key items
#4931 ( #4932 )
2017-03-03 09:23:09 +00:00
tdruez
06a1e12fd8
Fixed Permissions.get_required_object_permissions for #4927
2017-02-28 17:51:32 +01:00
Ran Benita
7a408f6cd2
Guard against the possible misspelling readonly_fields
in model serializers
...
Fixes #4897 .
2017-02-22 13:27:23 +02:00
Lanrik
5986f95c8d
Rearrange code ( #4908 )
...
Minor refactor. Move assignment to after `None` check.
2017-02-20 09:48:19 +00:00
Pavlin Gergov
eacb93d453
Update _not_authenticated's docstring ( #4906 )
2017-02-20 09:33:54 +00:00
Isaac Stone
289e1e440e
Check for collection.Mapping instead of dict
...
issue #4901
2017-02-19 13:10:03 -08:00
Mariusz Felisiak
40e3462767
Reverted "Removed multi-table inheritance auto created PK from serialize" 1ecbeebbe5
.
2017-02-11 17:39:47 +01:00
Tom Christie
eb5774229f
Version 3.5.4 ( #4894 )
2017-02-10 11:15:39 +00:00
李扬
cbad236f6d
Add max_length and min_length arguments for ListField ( #4877 )
2017-02-06 09:36:03 +00:00
Xavier Ordoquy
f4707ad0e0
Merge pull request #4870 from felixxm/issue-dedent
...
Fixed `dedent` for tab indent.
2017-02-02 11:01:37 +01:00
Mohammad Ashraful Islam
2ec3db8177
fixed url checker ':' to 'http' ( #4678 )
2017-02-01 12:20:06 +00:00
Mariusz Felisiak
b99272c425
Fixed dedent
for tab indent.
2017-01-31 20:57:52 +01:00
Mariusz Felisiak
3001b56e06
Fixed Django 2.0 compatibility due to django.conf.urls.include
parameters change. ( #4866 )
2017-01-30 16:11:19 +00:00
Mariusz Felisiak
1c437a793c
Removed unnecessary importlib wrapper.
2017-01-29 20:38:39 +01:00
Mariusz Felisiak
1ecbeebbe5
Fixed #4574 -- Removed multi-table inheritance auto created PK from serialize. ( #4852 )
2017-01-26 14:18:43 +00:00
Ekwenugo Mirabel
217a81f19b
Use correct label for username field in login template ( #4841 )
2017-01-24 09:07:32 +00:00
Mariusz Felisiak
5c0f9f147c
Removed unnecessary utc wrapper. ( #4839 )
2017-01-23 16:22:32 +00:00
Luca
635dc03529
Parametrizable viewset custom views reverse name ( #4821 )
2017-01-19 15:20:34 +00:00
Asif Saifuddin Auvi
026a8d8707
make lint happy with isort --recursive
2017-01-18 22:15:44 +06:00
Asif Saifuddin Auvi
bc3849bd59
added utc compat to fields
2017-01-18 19:31:04 +06:00
Asif Saifuddin Auvi
5717e853db
fix import of utc
2017-01-18 19:28:57 +06:00
Asif Saifuddin Auvi
5436df54c6
added compat shim for utc/UTC
2017-01-18 19:06:41 +06:00
Artem Muterko
06a5bcc88e
Add mediatype tests ( #4813 )
2017-01-16 18:17:51 +00:00
Ryan P Kilby
50c2d71a80
tox/travis maintenance ( #4811 )
...
* Use py36 on travis
* Remove basepython from tox
* Use py27 on travis
* Use version ranges for dependencies
* Use tox-travis to sync python/env factors
* Add toxenv/django env vars to codecov build vars
* Use raw string to fix py36 invalid escape sequence
2017-01-16 13:51:07 +00:00
Artem Muterko
b6b2c4bb5b
Renderer tests ( #4791 )
2017-01-08 16:33:43 +00:00
Artem Muterko
4dd71d68d2
Remove extra parentheses ( #4789 )
2017-01-08 16:09:23 +00:00
Artem Muterko
773b68e188
Fix typos in Python files
2017-01-08 15:36:49 +02:00
Roman Vasilyev
64e801e479
get view for django 'virtual hosts' ( #4776 )
...
Brill, thanks! 👍
2017-01-06 22:46:36 +00:00
Artem Muterko
a5fcf10c0e
Raise RuntimeError when trying to encode coreapi objects ( #4790 )
2017-01-06 22:32:13 +00:00
Ryan P Kilby
11fd3bf108
Add disabling of declared fields on serializer subclasses ( #4764 )
...
* Add test for disabling declared fields on child
* Check that declared base field is not in attrs
* Update meta inheritance docs to include serializer
* Test that meta fields cannot be declared as None
* Add docs example for declarative field disabling
2017-01-03 21:14:19 +00:00
Nik Nyby
24e082b142
docs: typo fix: it's -> its
2016-12-22 12:44:43 -05:00
Matthew Medal
93fe531dea
Breadcrumb view name suffix fix ( #4750 )
...
* add failing testcase for breadcrumb suffixes missing when using ModelViewSets
* fix get_breadcrumbs to honor overridden get_view_name and keep viewset suffixes
* ensure suffixes are appended in breadcrumb util
2016-12-20 22:19:00 +00:00
Christian Hess
f38734ef98
Add new line correctly in docstring sections ( #4759 )
...
The order of the line break was wrong
2016-12-20 16:26:18 +00:00
Eduard Iskandarov
ebe174c0d7
add per-view custom exception handler support ( #4753 )
2016-12-15 12:36:40 +00:00
Thodoris Sotiropoulos
4c2d6b9bb7
Do not ignore source when building fields dynamically
...
This commit fixes the issue when you set the keyword argument `source`
and your have not set the serializer fields explicitly. Then the
construction of field failed because there is not actually any model
field with that name.
However, you are still able to imply the name of model field by
providing the `source` keyword argument.
2016-11-17 18:51:22 +02:00
Tom Christie
24791cb353
Invalidate any existing prefetch cache on PUT requests. ( #4668 )
2016-11-11 09:44:35 +00:00
Tom Christie
8bab7f8d58
Only apply the nested writes test to writable fields. ( #4669 )
2016-11-10 16:36:56 +00:00
Tom Christie
ea60872e9e
Version 3.5.3 [ci skip]
2016-11-07 13:38:48 +00:00
Tom Christie
8d72535be9
Fix FilterSet warnings. ( #4660 )
2016-11-07 12:55:18 +00:00
Rex Salisbury
06df61e38c
handle error when no links are found ( #4649 )
...
This is to address https://github.com/tomchristie/django-rest-raml/issues/5
The problem is that if you try to generate RAML docs when you haven't set up any views, you get the above error (min called on an empty list).
unfortunately, this PR is not very helpful since it doesn't actually surface a readable error to the user. Not sure what the best way to address this would be...
2016-11-07 11:41:10 +00:00
James Beith
befacfb00d
Add autofocus support for input.html templates ( #4650 )
...
This change adds support to use `'autofocus': True` in the style options and have the `autofocus` attribute included on the input field when rendered.
2016-11-07 11:34:53 +00:00
Andrzej Pragacz
45e058d7ba
Fix unhandled Http404, PermissionDenied in schema generation ( #4645 ) ( #4646 )
2016-11-02 09:04:01 +00:00
Tom Christie
2bf082a623
Version 3.5.2 [ci skip] ( #4641 )
2016-11-01 11:31:20 +00:00
Tom Christie
276ed80fd3
Support 'on'/'off' literals with BooleanField. Closes #4624 ( #4640 )
2016-11-01 11:11:34 +00:00
Kennedy Mwenja
7038571157
Enable cursor pagination of value querysets. ( #4569 )
...
To do `GROUP_BY` queries in django requires one to use `.values()`
eg this groups posts by user getting a count of posts per user.
```
Posts.objects.order_by('user').values('user').annotate(post_count=Count('post'))
```
This would produce a value queryset which serializes its result
objects as dictionaries while `CursorPagination` requires a queryset
with result objects that are model instances.
This commit enables cursor pagination for value querysets.
- had to mangle the tests a bit to test it out. They might need
some refactoring.
- tried the same for `.values_list()` but it turned out to be
trickier than I expected since you have to use tuple indexes.
2016-11-01 10:42:01 +00:00
Nicolas Delaby
97d848413e
Fix support of get_full_details() for Throttled exceptions ( #4627 )
...
Since `str` objects are immutable, appending to existing `str` creates
in fact a new `str` instance.
Thus `ErrorDetail.detail.code` attribute is lost after `str` concatenation operation.
2016-11-01 10:38:56 +00:00
Kieran Spear
98df932194
Fix FilterSet proxy ( #4620 )
2016-11-01 10:30:17 +00:00
Ryan P Kilby
d92b24a0b7
Make serializer fields import explicit ( #4628 )
2016-11-01 10:27:11 +00:00
Tom Christie
5c54b227c1
Drop redundant requests adapter ( #4639 )
2016-11-01 10:24:53 +00:00
Tom Christie
7eb6cdca00
Don't lose exception info ( #4638 )
2016-11-01 10:22:30 +00:00
Alex Kahan
895c67c9a2
Fixes #4532 ( #4636 )
2016-10-31 20:41:54 +00:00
Ryan P Kilby
eafc9a2393
Fix is_simple_callable with variable args, kwargs ( #4622 )
2016-10-25 20:47:24 +01:00
Tom Christie
3b39d2d13a
Version 3.5.1 [ci skip]
2016-10-21 17:10:38 +01:00
Tom Christie
30bf9df5d0
Fix guardian import ( #4612 )
2016-10-21 16:59:43 +01:00
Tom Christie
0fe0e1e703
Fix schema base paths ( #4611 )
2016-10-21 16:59:34 +01:00
Tom Christie
f1bdce17b5
Fix for case of ListSerializer with single item ( #4609 )
2016-10-21 15:21:23 +01:00
Lukasz Karolewski
0b346e94b1
changing order of imports ( #4601 )
...
when using with django-filter and rest_framework_swagger need to import coreapi before django-filter as django filter tries to load rest_framework.coreapi which is undefined at this point
2016-10-21 15:00:25 +01:00
Tom Christie
e3686aca93
Don't use bare 'raise'. [ci skip]
2016-10-21 14:47:26 +01:00
Tom Christie
2395fb5386
Deprecate DjangoFilter backend ( #4593 )
...
Deprecate the built-in `rest_framework.filters.DjangoFilterBackend` in favour of the third-party `django_filters.rest_framework.DjangoFilterBackend`.
2016-10-20 10:47:09 +01:00
Zach Wernberg
fcff16c5c6
minor typo
2016-10-18 23:14:55 -05:00
Tom Christie
8d0a91b002
Fix 3674 ( #4571 )
...
Handle ModelSerializer case for relationships to models with custom pk.
2016-10-13 12:43:43 +01:00
Tom Christie
88c6c380c5
Use field.source to perform check for writable nested field, not key ( #4568 )
2016-10-12 16:51:01 +01:00
Alexey Evseev
2519ce9128
Fix schema generation with custom page_size pagination param ( #4567 )
2016-10-12 16:09:45 +01:00
Tom Christie
5677d063d8
Do not treat empty non-form input as HTML. ( #4566 )
2016-10-12 15:46:24 +01:00
Tom Christie
26e51ecd6c
When HTML form input is used with JSONField, treat the input as a JSON encoded string, not a JSON primative. ( #4565 )
2016-10-12 14:04:10 +01:00
Tom Christie
b419970431
Handle empty data with serializer ( #4564 )
2016-10-12 10:47:17 +01:00
Tom Christie
11a89ebff4
Removous erronous duplicate Danish translation file ( #4563 )
2016-10-12 10:02:21 +01:00
SerenityCode
02fcf6a334
Use field name instead of source when generating docs ( #4559 )
2016-10-12 09:46:59 +01:00
Tom Christie
7f29cfc931
Lazy hyperlink names ( #4554 )
2016-10-11 12:18:00 +01:00
Tom Christie
d0b3b6470a
Fix prefetch_related updates. ( #4553 )
2016-10-11 11:07:40 +01:00
Akshay Sharma
aed4ed5e73
Browsable API navbar gets overlapped by highlighted pagination item fix ( #4547 )
2016-10-11 10:59:00 +01:00
Tom Christie
a3802504a0
Error codes ( #4550 )
...
Add error codes to `APIException`
2016-10-11 10:25:21 +01:00
Tom Christie
0dec36eb41
Version 3.5 ( #4525 )
...
* Start test case
* Added 'requests' test client
* Address typos
* Graceful fallback if requests is not installed.
* Add cookie support
* Tests for auth and CSRF
* Py3 compat
* py3 compat
* py3 compat
* Add get_requests_client
* Added SchemaGenerator.should_include_link
* add settings for html cutoff on related fields
* Router doesn't work if prefix is blank, though project urls.py handles prefix
* Fix Django 1.10 to-many deprecation
* Add django.core.urlresolvers compatibility
* Update django-filter & django-guardian
* Check for empty router prefix; adjust URL accordingly
It's easiest to fix this issue after we have made the regex. To try
to fix it before would require doing something different for List vs
Detail, which means we'd have to know which type of url we're
constructing before acting accordingly.
* Fix misc django deprecations
* Use TOC extension instead of header
* Fix deprecations for py3k
* Add py3k compatibility to is_simple_callable
* Add is_simple_callable tests
* Drop python 3.2 support (EOL, Dropped by Django)
* schema_renderers= should *set* the renderers, not append to them.
* API client (#4424 )
* Fix release notes
* Add note about 'User account is disabled.' vs 'Unable to log in'
* Clean up schema generation (#4527 )
* Handle multiple methods on custom action (#4529 )
* RequestsClient, CoreAPIClient
* exclude_from_schema
* Added 'get_schema_view()' shortcut
* Added schema descriptions
* Better descriptions for schemas
* Add type annotation to schema generation
* Coerce schema 'pk' in path to actual field name
* Deprecations move into assertion errors
* Use get_schema_view in tests
* Updte CoreJSON media type
* Handle schema structure correctly when path prefixs exist. Closes #4401
* Add PendingDeprecation to Router schema generation.
* Added SCHEMA_COERCE_PATH_PK and SCHEMA_COERCE_METHOD_NAMES
* Renamed and documented 'get_schema_fields' interface.
2016-10-10 13:03:46 +01:00
Camille Harang
e99b30d28b
Fix rest_framework.filters.OrderingFilter doesn't pass context to ser… ( #4543 )
...
* Fix rest_framework.filters.OrderingFilter doesn't pass context to serializers #4541
* #4541 Additional fix for remove_invalid_fields()
2016-10-10 11:59:02 +01:00
Rowan Seymour
883efbc19f
Case insensitive uniqueness validation ( #4534 )
2016-10-04 13:44:50 +01:00
Dmitry Dygalo
b82ec540ad
Remove code for old Django versions ( #4513 )
2016-09-23 23:03:02 +01:00
Tom Christie
7ab4a587d9
Version 3.4.7 ( #4501 )
2016-09-21 12:24:26 +01:00
Tom Christie
be74d11165
Fallback behavior for request parsing when request.POST already accessed. ( #4500 )
2016-09-21 11:49:09 +01:00
Ollie Ford
fe96ceced0
fixes response rendering with empty context ( #4495 )
...
This commit allows `response.render` to be called when
`response.rendered_context == {}`. This should be allowed, since
if [the JSONRenderer, for example](https://github.com/tomchristie/django-rest-framework/blob/master/rest_framework/renderers.py#L85-L92 ) receives a `None` context, it
sets it to an empty dictionary itself.
2016-09-17 03:13:34 +01:00
Tanner Hobson
fe4c4fa751
Fix indentation regression in API listing ( #4493 )
...
In commit 5392be4ddb
, there was a change
made when cleaning up the template for the API listing that caused 2
spaces to appear before every header item (except the first) and before
the first line of the body of the response. This meant that it often
looked like:
HTTP 200 OK
Allow: GET, OPTIONS
Content-Type: application/json
Vary: Accept
{
"key": "value",
"key2": "value2"
}
This change removes those leading spaces, so that it will now look like:
HTTP 200 OK
Allow: GET, OPTIONS
Content-Type: application/json
Vary: Accept
{
"key": "value",
"key2": "value2"
}
2016-09-17 03:09:49 +01:00
Tom Christie
4655501d51
Fix regression of RegexField
. ( #4490 )
...
* Don't deepcopy 'regex' arguments, instead treat as immutable.
2016-09-15 12:44:45 +01:00
José Padilla
6b6f319509
Add missing comma ( #4473 )
2016-09-08 14:01:26 +01:00
TakesxiSximada
5df54a711f
Set a view function's __module__ value to the WrappedAPIView object's __module__ ( #4465 )
2016-09-05 11:16:41 +01:00
Mathieu Pillard
07efbdb45e
Fix APIClient.get() when path contains unicode arguments ( #4458 )
2016-09-02 17:00:03 +01:00
dfavato
ec4761225e
Set self.count before self.limit in LimitOffsetPagination
...
By doing this it is possible to override get_limit in order to return all records if the request has a predefined param.
For example, if one wants that all records are retrieved if url has &limit=-1, get_limit could return self.count in this case.
Otherwise, if self.count is set after self.limit then, to achive the same result, one has to override get_limit and paginate_queryset, or run get_limit twice.
2016-08-23 14:52:20 -03:00
Tom Christie
f064ec6ac6
Version 3.4.6 ( #4436 )
2016-08-23 16:59:47 +01:00
Tom Christie
97806f9724
Add missing comma
2016-08-23 09:46:03 +01:00
José Padilla
d0ed482d70
Skip HiddenField from Schema fields ( #4429 )
2016-08-22 16:53:53 +01:00
orf
d540f0262b
Improve Create to show the original exception traceback ( #3508 )
2016-08-19 14:42:13 +01:00
Tom Christie
a335309b33
Add __str__ method to PKOnlyObject ( #4423 )
2016-08-19 14:37:27 +01:00
Tom Christie
63342e81db
Version 3.4.5 ( #4421 )
2016-08-19 12:45:20 +01:00
Tom Christie
382ea770b5
Improve debug error handling ( #4416 )
2016-08-18 14:42:15 +01:00
Tom Christie
b76984d222
Allow custom CSRF_HEADER_NAME setting. ( #4415 )
2016-08-18 11:24:03 +01:00
Tom Christie
e3f8d06baf
Include .action attribute on viewsets when generating schemas ( #4408 )
2016-08-15 17:10:55 +01:00
Tom Christie
101fd29039
Do not include uploads in request.POST ( #4407 )
2016-08-15 16:53:17 +01:00
Tom Christie
785b206b81
Tweak doctsring. Closes #4404 [ci skip]
2016-08-15 16:21:51 +01:00
James Beith
075a0bde5a
Fix template syntax error for as_list_of_strings
( #4403 )
2016-08-15 09:28:46 +01:00
Tom Christie
a7525d838a
Version 3.4.4 ( #4395 )
2016-08-12 12:08:25 +01:00
Tom Christie
ae720d9bde
Fix issue with generating categories for schema endpoints ( #4394 )
2016-08-12 10:58:47 +01:00
Neil Parsons
7466b61e62
Don't strip empty query params when paginating ( #4260 )
2016-08-12 10:50:16 +01:00
Leonid Shvechikov
1d26b398ad
Fix comment for SerializerMethodField.bind method ( #4389 )
...
It seems that the example was copy&pasted and not updated properly.
2016-08-11 22:15:21 +01:00
Tom Christie
ebf43346a1
Do not re-run query for empty results with LimitOffsetPagination ( #4388 )
2016-08-11 16:54:55 +01:00
Tom Christie
116917dbed
Add form field descriptions to schemas ( #4387 )
2016-08-11 16:18:33 +01:00
Tom Christie
01b498ec51
Fix schema categories for custom list actions ( #4386 )
2016-08-11 14:07:40 +01:00
Tom Christie
b50d8950ee
Pass request to schema generation ( #4383 )
...
Pass request to schema generation
2016-08-11 11:27:28 +01:00
Tom Christie
f16e880167
Stricter type validation for CharField. ( #4380 )
...
Stricter type validation for CharField
2016-08-10 17:22:19 +01:00
Tom Christie
f1a2eeb818
.choices property of RelatedField should preserve non-string values. ( #4379 )
...
Update RelatedField.choices to support non-string values
2016-08-10 16:38:59 +01:00
Akhil Lawrence
fa4ce50be7
Modified exception handler to throw django error page in case of 500 error ( #4172 )
...
Show Traceback HTML in browsable API
2016-08-10 15:24:32 +01:00
Daniel Hahler
378b04eeaa
Fix handling of ALLOWED_VERSIONS and no DEFAULT_VERSION ( #4370 )
...
When only `ALLOWED_VERSIONS` but no `DEFAULT_VERSION` is specified, a
version should be enforced.
2016-08-10 15:19:56 +01:00
Tom Christie
48f3db36d6
Allow optional max_digits on DecimalField ( #4377 )
2016-08-10 14:39:26 +01:00
Tom Christie
2d43b17f9a
Limit queryset when rendering relational choices. ( #4375 )
...
Limit querysets to html_cutoff when rendering relational choices
2016-08-10 13:01:10 +01:00
Tom Christie
8105a4ac5a
Resolve form display with ChoiceField, MultipleChoiceField and non-string choices. ( #4374 )
...
* Add tests for html-form-rendering choice fields
* Resolve issues with ChoiceField, MultipleChoiceField and non-string options
* Ensure None template comparisons don't match string None
2016-08-10 12:02:33 +01:00
Tom Christie
0781182646
Fix call to .resolve_context ( #4371 )
2016-08-09 17:48:29 +01:00
Dmitry Dygalo
e1768bdc16
Fixed various typos ( #4366 )
2016-08-08 09:32:22 +01:00
Tom Christie
bb613c5ad1
Version 3.4.3 ( #4361 )
...
* Version 3.4.3
2016-08-05 13:33:25 +01:00
Tom Christie
f9cf22edc8
Version 3.4.2 ( #4360 )
2016-08-05 12:38:19 +01:00
Tom Christie
d5178c9246
Include kwargs passed to 'as_view' when generating schemas ( #4359 )
2016-08-05 11:19:39 +01:00
Tom Christie
11a2468379
Access request.user.is_authenticated
as property not method, under Django 1.10+ ( #4358 )
...
* For Django >=1.10 use user.is_authenticated, not user.is_authenticated()
2016-08-05 11:04:01 +01:00
Tom Christie
aff146ae83
Filter HEAD out from schemas ( #4357 )
2016-08-05 10:23:40 +01:00
Tom Christie
a9a097496e
extra_kwargs takes precedence over uniqueness kwargs ( #4349 )
2016-08-02 14:33:15 +01:00
Tom Christie
bda16a518a
Dedent tabs. ( #4347 )
2016-08-02 13:33:14 +01:00
René Fleschenberg
9f5e841daf
Change template context generation in TemplateHTMLRenderer ( #4236 )
...
- Change the name of ``resolve_context()`` to ``get_template_context()``.
- Pass the renderer context to this method, to give subclasses more flexibility
when overriding.
2016-08-02 13:11:41 +01:00
Tom Christie
e37619f741
Serializer defaults should not be included in partial updates. ( #4346 )
...
Serializer default values should not be included in partial updates
2016-08-02 13:05:12 +01:00
Tom Christie
3ef3fee926
Descriptive error from FileUploadParser when filename not included. ( #4340 )
...
* Descriptive error from FileUploadParser when filename not included.
* Consistent handling of upload filenames
2016-08-01 18:44:58 +01:00
Tom Christie
46a44e52aa
Quantize incoming digitals ( #4339 )
2016-08-01 17:15:41 +01:00
Tom Christie
aa349fe767
Handle non-string input for IP fields ( #4338 )
2016-08-01 16:14:26 +01:00
jsurloppe
e997713313
urljoin with leading slash remove part of path ( #4332 )
2016-08-01 14:14:55 +01:00
Tom Christie
449ec1d724
Version 3.4.1 [ci skip] ( #4326 )
2016-07-28 13:34:35 +01:00
Tom Christie
e407dc7f01
Added root_renderers argument ( #4323 )
2016-07-28 12:50:51 +01:00
Tom Christie
061e0ed084
Added url and schema_url arguments ( #4321 )
2016-07-28 12:08:34 +01:00
Tom Christie
6a7d34ec34
Unique together checks should apply to fields that are read only, but have a default. ( #4316 )
2016-07-27 15:40:04 +01:00
Tom Christie
1acbc29d58
Minor style tweak. [ci skip]
2016-07-27 15:39:46 +01:00
Alexander Gaevsky
46a870c002
Fix schema generation for APIView, since it does not have get_serializer_class method. ( #4285 )
2016-07-27 15:36:36 +01:00
Tom Christie
3586c8a61a
Set view.format_kwarg in schema generator ( #4315 )
2016-07-27 14:43:45 +01:00
Tom Christie
8ebf81b150
Schema support should function when 'pagination_class = None' ( #4314 )
2016-07-27 13:02:48 +01:00
Tom Christie
351e0a4a99
Fix json indent parameter. Closes #4281 ( #4313 )
2016-07-27 11:49:01 +01:00
Sassan Haradji
f0f61aa077
use verbose_name instead of object_name in field_mapping ( #4299 )
...
* use verbose_name instead of object_name in error messages
2016-07-26 15:12:51 +01:00
Asif Saifuddin Auvi
b63099084f
twitter bootstrap minor update ( #4307 )
...
* updated bootstrap min css to 3.3.7
* updated bootstrap min javascript to 3.3.7
2016-07-26 14:09:04 +01:00
Gustavo Pantuza
da2ff1bc4a
Adding support for RFC 4918 status codes ( #4291 )
...
* Added HTTP status codes from RFC 4918
* Updated documentation about status codes
* Added reference to RFC 4918
2016-07-26 11:09:12 +01:00
Andi Albrecht
3ca0b15b17
Restore meta information for each search field. ( #4298 )
...
The meta information stored in opts needs to be restored for
each search field. Otherwise it references the wrong model
when an attribute of a related model comes before an attribute
of the original model in search fields. This doesn't apply to
m2m relations since must_call_distinct returns True in that
case.
2016-07-26 11:07:03 +01:00
Aymeric Augustin
a436515196
Add missing return statement.
...
Fix #4272 .
2016-07-16 22:44:49 +02:00
Tom Christie
8385ae42c0
3.4.0 Release ( #4258 )
...
* 3.4.0 Release
* Version 3.4 release
* Full release notes
* Update translation files
* Update release documentation
* Update release notes
* Docs on supporting alternate schema formats
* Add schema_renderers to DefaultRouter
2016-07-13 16:30:41 +01:00
Tom Christie
549210b50f
Don't strip microseconds in JSON output. ( #4256 )
2016-07-11 14:34:23 +01:00
Tom Christie
321c060dbe
Resolve incorrect media type ( #4254 )
2016-07-11 12:04:11 +01:00
kiyoqoko
6338ce80ab
Add localize keyword argument to DecimalField
( #4233 )
...
Add `localize` keyword argument for DecimalField
2016-07-06 16:07:16 +01:00
Tom Christie
6ff9840bde
Schemas & client libraries. ( #4179 )
...
* Added schema generation support.
* New tutorial section.
* API guide on schema generation.
* Topic guide on API clients.
2016-07-04 16:38:17 +01:00
Vikalp Jain
1d2fba906e
Fix issues with routers for custom list-route and detail-routes ( #4229 )
2016-06-29 17:27:17 +01:00
Vadim
c0f4dfd8f3
Add tests for the ListSerializer for the TestSerializerPartialUsage.
...
Additional fix partial update for the ListSerializer.
2016-06-29 09:48:31 +03:00
Vadim
53a1205dd0
Fix partial update for the ListSerializer.
2016-06-24 15:04:18 +03:00
Laurent De Marez
fdde44d9d1
Fix parsing multipart data using a nested serializer with list ( #3820 )
...
It is possible that a key in a MultiValueDict has multiple values, lists
are represented this way. When accessing a key in a MultiValueDict
it only returns the last element of that key. This becomes a problem
when parsing an html dict with a list inside of it.
To fix this problem we have to get and set the value using .getlist()
and .setlist().
2016-06-23 16:03:24 +01:00
Tom Christie
bc3485ab7d
Namespace versioning with nested namespaces ( #4219 )
...
Support nested namespaces with namespaced versioning.
2016-06-23 16:00:11 +01:00
Tom Christie
f81d516ae4
Robust uniqueness checks. ( #4217 )
...
* Robust uniqueness checks
* Add master to test matrix (allow_failures)
2016-06-23 15:09:23 +01:00
Tom Christie
e1f7cc4082
Minor refactoring of must_call_distinct ( #4215 )
2016-06-23 14:02:25 +01:00
Simon Charette
90bb0c58ce
Prevented unnecessary distinct() call in SearchFilter. ( #3938 )
...
* Prevented unnecessary distinct() call in SearchFilter.
* Refactored SearchFilter lookup prefixes.
2016-06-23 13:49:23 +01:00
Rowan Seymour
36ca4b8e06
Make offset_cutoff a class attribute in CursorPagination so that it can be easily overridden in subclasses ( #4212 )
2016-06-23 10:37:15 +01:00
Tom Christie
798a971f20
Simplfy TimeField passing through strings ( #4197 )
...
* Simplfy TimeField passing through strings
2016-06-14 16:05:00 +01:00
Tom Christie
9406e45b2c
Pass through strings as-in with DateTimeField ( #4196 )
2016-06-14 12:23:39 +01:00
Tom Christie
2e7fae7698
limit=0 should revert to default limit ( #4194 )
2016-06-13 16:32:43 +01:00
Tom Christie
c3b7fba918
Exclude read_only=True fields from unique_together validation & add docs. ( #4192 )
...
* Exclude read_only=True fields from unique_together validation
* Test to ensure that unique_together validators can be removed
* Do not add uniquness_extra_kwargs when validators are explicitly declared.
* Add docs on validation in complex cases
2016-06-13 13:31:12 +01:00
Tom Christie
9bffd35432
Handle bytestrings in JSON. Closes #4185 . ( #4191 )
2016-06-13 10:41:50 +01:00
Tom Christie
bb22ab8ee7
More robust form rendering in the browsable API ( #4181 )
2016-06-08 17:13:20 +01:00
Tom Christie
a5f822d067
Empty cases of .validated_data and .errors as lists not dicts for ListSerializer ( #4180 )
2016-06-08 15:55:09 +01:00
Asif Saifuddin Auvi
04e5b5b20a
removed AUTH_USER_MODEL compat property ( #4176 )
...
Removed unnecessary `AUTH_USER_MODEL` compat variable.
(No longer required)
2016-06-07 12:13:35 +01:00
Sergei Sinitsyn
94863ee6d0
Change serializer field help_text rendering in browsable api ( #3812 )
2016-06-02 15:21:57 +01:00
Tom Christie
75751cc64e
Allow relative style hyperlinked URLs
2016-06-02 15:03:17 +01:00
Tom Christie
9c996d7d2a
Clean up existing deprecation warnings. ( #4166 )
...
* Add Meta.fields = '__all__' to serializer classes where required.
* Add explicit on_delete=models.CASCADE to ForeignKey fields.
* Use '.remote_field' and '.model' in preference to '.rel' and '.to' when inspecting model fields.
* Use new value_from_object in preference to internal _get_val_from_obj
2016-06-02 14:39:10 +01:00
Tom Christie
05b0c2adff
Don't list M2M choices in OPTIONS requests. Refs #3751 . ( #4160 )
2016-06-01 17:28:32 +01:00
Simon Charette
014e24b024
Do not list related field choices in OPTIONS requests.
...
Do not list related field choices in OPTIONS requests.
2016-06-01 16:33:03 +01:00
Asif Saifuddin Auvi
b92901e591
updated jquery version to 1.12.4 ( #4157 )
...
Updated jquery version to 1.12.4
2016-06-01 15:33:36 +01:00
Tom Christie
994e1ba927
Django 1.10 support. ( #4158 )
...
* Added TEMPLATES setting to tests
* Remove deprecated view-string in URL conf
* Replace 'urls = ...' in test classes with override_settings('ROOT_URLCONF=...')
* Refactor UsingURLPatterns to use override_settings(ROOT_URLCONF=...) style
* Get model managers and names in a version-compatible manner.
* Apply override_settings to a TestCase, not a mixin class
* Use '.callback' property instead of private attributes when inspecting urlpatterns
* Pass 'user' to template explicitly
* Correct sorting of import statements.
* Remove unused TEMPLATE_LOADERS setting, in favor of TEMPLATES.
* Remove code style issue
* BaseFilter test requires a concrete model
* Resolve tox.ini issues
* Resolve isort differences between local and tox environments
2016-06-01 15:31:00 +01:00
Tom Christie
fe2aede18d
More robust default behavior on OrderingFilter ( #4156 )
2016-06-01 11:08:04 +01:00
KhasanovBI
92bf8b9197
Wrap guardian.VERSION in tuple, in django-guardian 1.4.2 version has list type and comparison fails. ( #4149 )
2016-05-26 20:22:38 +01:00
Kennedy Mwenja
592eea9b9e
* Use get_serializer_class in ordering filter* Test improper configuration of ordering* Raise ImproperlyConfigured when missing get_serializer_class
...
* Use get_serializer_class in ordering filter
* Test improper configuration of ordering
* Raise ImproperlyConfigured when missing get_serializer_class
2016-05-26 09:59:13 +01:00
Xiao Hanyu
19bdfda49a
Fix #3844 , refine validator for fields with <source=> kwargs
...
When serializers has fields with something like `source=user.email`, the
uniqueness validator should check `email` field instead of `user`, cause
`user` is a model object.
2016-05-26 10:58:37 +08:00
Ben Brostoff
400078311b
Fix typos in ReturnDict and ReturnList docstrings
2016-05-16 20:39:13 -04:00
KhasanovBI
768ae26aa4
Fix None values representation in childs of ListField, DictField. ( #4118 )
2016-05-16 09:30:23 +01:00
José Padilla
daccc2b8f3
Clean up js style and remove extra getCookie function ( #4123 )
2016-05-16 09:27:38 +01:00
José Padilla
5392be4ddb
Spring cleaning template styles ( #4124 )
2016-05-16 09:27:10 +01:00
Alexander Gaevsky
1328982de3
Set proper status code in AdminRenderer for the redirection after POST/DELETE requests. ( #4106 )
2016-05-16 09:22:28 +01:00
Tom Christie
ebb4070467
Resolve TimeField representation for midnight value. ( #4107 )
2016-05-10 11:56:36 +01:00
José Padilla
0795f7394c
Prevent raising exception when limit is 0 ( #4098 )
2016-05-10 10:58:24 +01:00
Hongxia Zhong
d39af5335c
Fix incorrect zh-hans and zh-hant locale directory path
2016-05-06 01:22:33 -07:00
Miro Hrončok
ffdac0d936
TokenAuthentication: Allow custom keyword in the header ( #4097 )
...
This allows subclassing TokenAuthentication and setting custom keyword,
thus allowing the Authorization header to be for example:
Bearer 956e252a-513c-48c5-92dd-bfddc364e812
It doesn't change the behavior of TokenAuthentication itself,
it simply allows to reuse the logic of TokenAuthentication without
the need of copy pasting the class and changing one hardcoded string.
Related: #4080
2016-05-04 10:53:34 +01:00
Germán Larraín
e19b21ecc5
Handle incorrectly padded HTTP basic auth header ( #4090 )
2016-05-03 09:24:55 +01:00
Daniele Varrazzo
88c80fe2e9
Fixed DecimalField arbitrary precision support ( #4075 )
2016-04-27 17:04:01 +01:00
José Padilla
4f16c54428
Merge pull request #4049 from clintonb/csrf-cookie-fix
...
Added support for custom CSRF cookie names
2016-04-26 11:43:23 -03:00
Xavier Ordoquy
1823662e1e
Merge pull request #4044 from linovia/merge/3.3.x_to_master
...
Merge the changes in 3.3.x back to master.
2016-04-21 11:31:15 +02:00
Clinton Blackburn
9d9658f128
Added support for custom CSRF cookie names
...
Instead of hardcoding the CSRF cookie name, the value is passed to the template as a context variable, rendered as a JavaScript variable, and read by csrf.js.
Fixes #4048
2016-04-11 23:58:55 -04:00
Simon Charette
d87f2bc7b6
OrderingFilter adjustements ( #3983 )
...
* Made sure the OrderingFilter relies on Field.verbose_name.
* Marked OrderingFilter's order labels for translation.
2016-04-08 15:37:23 +01:00
Xavier Ordoquy
bff3bebdbe
Merge remote-tracking branch 'reference/stable/3.3.x' into merge_test
...
# Conflicts:
# docs/topics/release-notes.md
2016-04-08 15:46:17 +02:00
Xavier Ordoquy
29a2e549c1
Merge remote-tracking branch 'reference/master' into bug/fix_correct_string_type
2016-04-07 18:03:12 +02:00
Xavier Ordoquy
2622588b30
Typo correction.
2016-04-07 18:00:17 +02:00
Xavier Ordoquy
019c6db759
Fix the string_types / text_types confusion introduced in #4025 ( #4035 )
2016-04-07 16:34:27 +01:00
Jonathan Liuti
78e4ea0d6e
No auth view failing permission should raise 403
...
A view with no `authentication_classes` set and that fails a
permission check should raise a 403 with the message from the
failing permission.
2016-04-07 16:24:26 +01:00
Xavier Ordoquy
763aab6b45
Fix the string_types / text_types confusion introduced in #4025
2016-04-05 16:29:16 +02:00
Nitesh Lohchab
09aa8f76c4
python2.x and 3.x compatible
2016-04-03 18:39:32 +05:30
Nitesh Lohchab
c22b92a66c
type('') to str
2016-04-03 00:07:45 +05:30
Xavier Ordoquy
67ac0486f5
Merge pull request #4006 from mochawich/patch-1
...
Reorder initializing the view
2016-03-31 13:53:14 +02:00
Tom Viner
3e5a1397d7
remove trailing slash from cramer cursor link
2016-03-24 20:37:38 +00:00
Xavier Ordoquy
cfb77ae6fa
Merge pull request #3273 from olliewalsh/breadcrumbs_view_name
...
Do not ignore overridden View.get_view_name() in breadcrumbs
2016-03-23 01:10:13 +01:00
Xavier Ordoquy
0e8306341d
Merge pull request #3936 from carltongibson/null-uuid-fk-take2
...
Fix None UUID ForeignKey serialization
2016-03-22 22:46:33 +01:00
Mohamad Nour Chawich
03270431ed
Reorder initializing the view
...
Determining the version and performing content negotiation should be done before ensuring the permission of the request. The reason is that these information can be used in handling the exceptions. For example different versions may return different error scheme. Also, the rendering class can be used to determine how to exception handler response should be rendered.
2016-03-20 21:46:37 +01:00
Maxime R
24694ddcb4
Fixed use of deprecated Query.aggregates
...
In Django 1.8 [`Query.aggregates` is replaced by `annotations`](https://docs.djangoproject.com/es/1.9/releases/1.8/#aggregate-methods-and-modules ).
Using aggregates currently raises a `RemovedInDjango20Warning`. [Django's source](https://github.com/django/django/blob/1.8/django/db/models/sql/query.py#L192 )
2016-03-18 16:16:13 +01:00
Stephan Groß
a101251a2a
Fix blank lines around docstrings
2016-03-17 11:06:47 +00:00
Xavier Ordoquy
265db86590
Translation update.
2016-03-14 08:31:27 +01:00
Carlton Gibson
2ef74cfa61
Bring check for null fk to BaseSerializer.to_representation
2016-03-13 20:39:19 +01:00
Mitar
2f49df8242
Run JavaScript only when DOM is ready.
2016-03-12 16:52:31 -08:00
Xavier Ordoquy
4399d601c5
Translation updates.
2016-03-07 20:25:10 +01:00
Jared Lang
e34a34e90b
Fix empty pk detection in HyperlinkRelatedField.get_url
...
This implementation allows detection of empty values that are non-nullable, allowing the field to return None values for such cases
2016-03-07 19:37:48 +01:00
Xavier Ordoquy
97cc83483f
Merge remote-tracking branch 'reference/stable/3.3.x' into stable/3.3.3
2016-03-01 10:39:34 +01:00
Jared Lang
7ac8cc760c
Fix empty pk detection in HyperlinkRelatedField.get_url
...
This implementation allows detection of empty values that are non-nullable, allowing the field to return None values for such cases
2016-02-29 12:56:56 -08:00
Xavier Ordoquy
753f4dc477
Fix sorting order.
2016-02-27 01:46:59 +01:00
Xavier Ordoquy
6ea6e37ac9
Add missing migration file for #3887
2016-02-27 00:51:35 +01:00
Xavier Ordoquy
24a2ec0501
Merge remote-tracking branch 'reference/stable/3.3.x' into stable/3.3.3
2016-02-27 00:36:23 +01:00
José Padilla
69c0de4faa
Merge pull request #3953 from akarambir/remove-old-django-checks
...
Closes #3952 : Remove old django checks from tests and compat
2016-02-19 11:08:45 -04:00
Karambir Singh Nain
69f1e3a9fd
Remove old django checks from tests and compat
...
Remove skipping of tests for Django<1.8. Remove several functions from compat.py not needed for Django>=1.8
2016-02-19 01:47:45 +05:30
Xavier Ordoquy
5e08231453
Remove informations about why the pagination didn't work.
...
We remove a couple of informations to lower the exposition of our internals.
2016-02-17 18:18:19 +01:00
Erick Wilder
8109752061
Closes #3937 . Support callable as the value of initial
for any serializer.Field
2016-02-17 10:52:21 +01:00
Carlton Gibson
20d1fdba69
Fix None UUID ForeignKey serialization
2016-02-16 09:29:48 +01:00
Xavier Ordoquy
f5822e7b71
Bump version to 3.3.3
2016-02-12 13:23:08 +01:00
Xavier Ordoquy
3693e938a4
Merge pull request #3908 from kostya0shift/fix_exceptions_force_text
...
Fixed _force_text_recursive typo
2016-02-12 08:24:13 +01:00
Federico Bond
03b5438d07
Add missing space in serializer error message
2016-02-11 15:09:21 -03:00
blag
89d575a52a
Remove version string from admin template
2016-02-09 05:56:47 -07:00
blag
d2ca8872c0
Remove version string from base template
2016-02-08 22:36:39 -07:00
Mikalai Radchuk
59ab3a291c
Fixes vertical html layout for BooleanField
...
`HTMLFormRenderer` renders `BooleanField` field as not checked if vertical layout are used.
2016-02-08 17:07:16 +03:00
Kostya Esmukov
3ea1fe61a0
Fixed _force_text_recursive typo
2016-02-07 18:58:19 +03:00
Simon Charette
1a052d6ee3
Silenced deprecation warnings on Django 1.8.
2016-02-04 13:49:55 -05:00
Mikalai Radchuk
1f2a32d506
Fixes docstrings in fields.py
...
Fixes docstrings for `to_choices_dict` and `flatten_choices_dict` functions in fields.py.
Mistakes were introduced in #4d69286
2016-02-03 12:36:00 +03:00
José Padilla
0512c394a3
Merge pull request #3875 from m1kola/bugfix/HTMLFormRenderer-render-renderer_context-default
...
Fixes AttributeError in HTMLFormRenderer.render
2016-02-01 16:28:11 -04:00
Mikhail Nacharov
d0f7b04805
enhancement #3886 Internationalization in admin interface rest_framework.authtoken
...
+ verbose_name in models.Token fields
+ Meta-options verbose_name & verbose_name_plural
+ Labels in AuthTokenSerializer fields in case of usages in Brousable API
+ provide AppConfig class as described in django documentation with verbose_name came through ugettext_lazy
2016-02-01 13:20:16 +05:00
Mikalay Radchuk
714607307e
Fixes AttributeError in HTMLFormRenderer.render
...
If `HTMLFormRenderer.render` will be called with default arguments,
`AttributeError: 'NoneType' object has no attribute 'get'` will be raised.
2016-01-26 21:26:30 +03:00
Xavier Ordoquy
9e8ddb88fc
Restore the abstract on Token model when the app isn't declared
...
The fact that we don't import Token from authentication doesn't invalidate
the need for the model to be abstract whenever the authtoken isn't listed
in the INSTALLED_APPS.
2016-01-21 13:28:32 +01:00
Xavier Ordoquy
328000fb34
Merge pull request #3624 from d6bels/master
...
Login form autofocus
2016-01-20 18:21:03 +01:00
Xavier Ordoquy
f1b28b4d63
Merge pull request #3605 from ryanhiebert/slug-related-field-queryset
...
RelatedField get_queryset and context
2016-01-20 18:17:29 +01:00
Xavier Ordoquy
e7fbd264ca
Merge pull request #3703 from sniegu/master
...
Add missing csrf_token in AdminRenderer post form.
2016-01-19 16:58:39 +01:00
Xavier Ordoquy
8ea7d6b5c6
Merge remote-tracking branch 'origin/master' into markdown-compat
...
Conflicts:
requirements/requirements-optionals.txt
2016-01-19 15:34:56 +01:00
Brad Montgomery
40b5774a33
QueryParameterVersioning does not use default version
...
QueryParameterVersioning does not fall back to the value used in the `DEFAULT_VERSION` setting, while other versioning schemes do. This looks like a minor change, and incorporates the `self.default_version` set in the superclass.
I'll sheepishly admit that I edited this inline without running any tests or anything, so please let me know if this needs more work.
2016-01-14 12:00:30 -06:00
Mads Jensen
215e1b6c6b
Regarding #3729
...
python -Werror generates warnings informing that on_delete is a required keyword in Django 2.0
2016-01-14 15:14:33 +01:00
Mads Jensen
a9c394f5b7
2015 update in __init__.py file
2016-01-13 12:54:56 +01:00
areski
4e01796303
Test for TimeField not handling empty values
2016-01-11 12:16:26 +01:00
areski
a76c3ed051
Fixed TimeField not handling empty values
2016-01-11 12:14:40 +01:00
Mikalai Radchuk
6b207d93d6
DateField.to_representation unicode compatibility
2016-01-11 13:11:01 +03:00
José Padilla
057cf13578
Merge pull request #3815 from atombrella/keys_dict_3786
...
Fixes #3786
2016-01-09 22:47:53 -04:00
Tom Christie
f01a3d9c36
Merge pull request #3801 from koordinates/fix-nested-validation-error
...
Fix nested validation error being rendered incorrectly.
2016-01-07 09:22:23 +00:00
Mads Jensen
d4cdb21de9
Fixes #3786
...
Minor fix for dictionary key lookup in settings file
2016-01-06 22:51:11 +01:00
Kevin Massey
7cd3933144
Fixes #3804 , avoiding update of Meta.extra_kwargs
...
Added unit test to cover.
2016-01-06 15:04:51 -05:00
Craig de Stigter
651319e2da
Fix nested validation error being rendered incorrectly.
...
Previously an extra list wrapped nested validation errors raised from serializer's validate() methods.
That was inconsistent with the format of validation errors raised by validate_<fieldname> methods.
i.e. these two resulted in *different* behaviour:
def validate_foo(self):
raise ValidationError(['bar'])
def validate(self):
raise ValidationError({'foo': ['bar']})
2016-01-06 16:05:43 +13:00
Tom Christie
37f7b76f72
Merge pull request #3785 from sheppard/authtoken-import
...
don't import authtoken model until needed
2016-01-05 17:28:48 +00:00
S. Andrew Sheppard
1712c00001
update invalid token case
2016-01-05 09:42:22 -06:00
Xavier Ordoquy
dceb686700
Merge pull request #3774 from tomchristie/decimalfield_validators
...
Min/MaxValueValidator is no longer transferred from a model's DecimalField
2016-01-04 16:36:44 +01:00
Kevin Brown
a772326112
Merged two DecimalValidator tests together
...
These two tests were previously added in
7d79cf35b7
but we have now discovered that there are not actually two separate
cases, there was just a bug in the code that made it look that way.
This also removes a redundant check to see if `DecimalValidator` was
defined.
2016-01-04 10:22:17 -05:00
S. Andrew Sheppard
ff29fdd875
don't import authtoken model until needed
2015-12-30 15:44:19 -06:00
Kevin Brown
87605e1e39
Don't filter out the DecimalValidator if it is not supported
...
Previously, all validators set on a DecimalField in Django would be
stripped when converted to a Django REST framework field. This was
because any validator that was an instance of `DecimalValidator` would
be removed, and when `DecimalValidator` wasn't supported (so it was
`None`), all validators would be removed.
This fixes the issue by only removing the `DecimalValidator` instances
if the `DecimalValidator` is supported.
2015-12-24 14:10:48 -05:00
Robert Romano
5fc938cbd1
The Internet Engineering Task Force approved the new HTTP status code 451. Adding to status.py and docs appropriately.
2015-12-23 12:54:17 -08:00
Michael Lissner
f15026be10
Fixes #3756 , adding the name to the HTML title, if it exists.
2015-12-22 10:31:18 -08:00
Tom Christie
18cdfcd712
Merge pull request #3731 from mjparker777/master
...
Issue 3726 DateTimeField not handling empty values
2015-12-18 11:27:12 +00:00
Tom Christie
61e7f7b0cc
Merge pull request #3715 from Cheglader/settings_errors
...
Raise error when setting a removed rest_framework setting for #3644
2015-12-18 11:19:06 +00:00
mjparker777
d9c360845d
changed datefield to match code layout of datetime and time changes
2015-12-17 12:21:44 -07:00
mjparker777
f3d5e1482b
Merge remote-tracking branch 'upstream/master'
2015-12-17 12:20:47 -07:00
Luis San Pablo
c389aeb051
Lint import ordring
2015-12-16 18:46:23 -06:00
Luis San Pablo
62e2a9706f
Fixed import order settings
2015-12-16 18:37:50 -06:00
Luis San Pablo
dab6bf4b1a
Changed error to warning message
2015-12-16 18:35:02 -06:00
Tom Linford
c78980771d
AutoFilterSet should subclass from self.default_filter_set
2015-12-16 15:36:07 -08:00
Dan Lipsitt
fb94be18be
docstring typo fix: DateAndFiles -> DataAndFiles
2015-12-16 10:42:10 -08:00
Xavier Ordoquy
ef8bde2d42
Bump version to 3.3.2
2015-12-14 07:33:17 +01:00
Xavier Ordoquy
485c297a04
Translations update.
2015-12-14 07:31:38 +01:00
mjparker777
decc5fa901
Merge remote-tracking branch 'upstream/master'
2015-12-13 17:51:06 -07:00
mjparker777
fc08236ab8
updated timefield also
2015-12-13 16:09:56 -07:00
mjparker777
bf60c08010
Issue 3726 DateTimeField not handling empty values
2015-12-13 12:21:13 -07:00
Luis San Pablo
fbd89d6b7e
Moved SETTINGS_DOC
2015-12-12 02:02:53 -06:00
Xavier Ordoquy
7a5d81c0b4
Add extra args/kwargs to authtoken's views ( #3718 )
2015-12-11 07:16:04 +01:00
Raphael Merx
fcc0a70f7c
Fixed suggestion for format in test renderer
...
Rendered would suggest using format='JSON' when the right argument is
format='json'.
2015-12-10 15:19:03 -08:00
Luis San Pablo
a615e37277
Removed depreceated constant
2015-12-07 23:30:45 -06:00
Luis San Pablo
5802dc0f98
Initial, fixes #3644
2015-12-07 23:25:40 -06:00
Luis San Pablo
0f85165b69
Fixed num args for %
2015-12-07 22:36:02 -06:00
Luis San Pablo
5117dad2ca
removed setting typo
2015-12-07 22:32:23 -06:00
Luis San Pablo
13c66b9dfe
Return error
2015-12-07 21:53:33 -06:00
Luis San Pablo
d86a901aff
Removed Settings raise attribute error
2015-12-07 21:45:44 -06:00
knbk
e203967e09
Add app_name to rest_framework.urls.
...
This allows users in Django 1.9+ to include the authentication urls
without specifying the namespace, as in:
urlpatterns = [
...
url(r'^auth/', include('rest_framework.urls'))
]
2015-12-08 02:25:00 +01:00
Xavier Ordoquy
f3949e994d
Update base translation file.
2015-12-07 18:56:47 +01:00
Tom Christie
c227b8188e
Merge pull request #3705 from mcastle/patch-2
...
Admin and API browser fails for views without a filter_class
2015-12-07 10:10:24 +00:00
Marlon
c1b70538a2
Resolve #3596
...
Uses #3597 , but without using `Context`.
2015-12-05 11:10:39 -06:00
Piotr Śniegowski
2faa7bc288
Add missing csrf_token in AdminRenderer post form.
2015-12-04 23:23:56 +01:00
Luis San Pablo
44a3d41ce9
Implement __getnewargs__ for #3628
2015-12-03 21:12:03 +00:00
bphillips
c153bcb479
Added validation to UUIDField to properly catch invalid input types (lists, tuples, etc).
2015-12-01 14:09:10 -05:00
José Padilla
d2f90fd6af
Merge pull request #3662 from awwester/ticket_3228
...
#3228 - add confirm modal for delete
2015-12-01 10:50:34 -04:00
Adam Wester
6d1ed851b5
#3228 - add confirm modal for delete
2015-12-01 07:51:29 -05:00
Tom Christie
832d6322a7
Merge pull request #3631 from syphar/paginat
...
allow setting a custom Django Paginator class
2015-11-30 20:58:32 +00:00
Tom Christie
8dea1aeed0
Merge pull request #3677 from Ernest0x/patch-4
...
Updated NestedBoundField to also handle empty string when rendering its form
2015-11-27 13:21:58 +00:00
Tom Christie
0d0aff44ac
Merge pull request #3668 from akx/exc-hiding
...
Reveal previously hidden AttributeErrors and TypeErrors
2015-11-27 11:51:25 +00:00
Aarni Koskela
69688289ce
Ensure Django{Model,Object}Permissions
don't hide exceptions.
...
Quietly catching `AttributeError` and `TypeError` when calling
`get_queryset()` is rather insidious, as those exceptions get caught no
matter where they might happen in the call stack.
2015-11-27 12:46:30 +02:00
Petros Moisiadis
570187b959
Updated NestedBoundField to also handle empty string when rendering its form
...
If a NestedBoundField field has a value of `None` and is inside another NestedBoundField field, it will have its value converted to an empty string while the form of its enclosing field is being rendered. So, NestedBoundField fields with an empty string value must be handled the same way as NestedBoundField fields with a `None` value.
2015-11-26 17:07:57 +02:00
Aarni Koskela
47c9bb143c
Fix smart_repr()
to also clean upper-case hex addresses.
...
Windows Pythons seem to like printing addresses in upper-case, while Linux
Pythons like lower-case hexes.
This led to an amusing (for a given value of "amusing", anyway) situation
where some repr tests would fail if the objects they were testing happened
to be allocated at an address with a hex digit in the range A..F.
2015-11-26 15:48:04 +02:00
Xavier Ordoquy
d6c326623f
Make DRF compatible with multi template engine in Django 1.8
2015-11-25 07:37:01 +01:00
Steven Loria
b209fe04fc
Fix typo in docstring for ReadOnlyField
2015-11-20 13:51:21 -05:00
Andrei Fokau
2acc6a756c
Use related_objects api for Django 1.9+
2015-11-19 13:04:37 +01:00
Tom Christie
378b7b8963
Merge pull request #3655 from andreif/fix/headers-order
...
Sort response headers in api renderer
2015-11-18 17:25:54 +00:00
Xavier Ordoquy
edc5a79b85
Merge pull request #3497 from Ins1ne/feature/3340
...
update docs about detail page link for AdminRenderer
2015-11-18 17:38:07 +01:00
Andrei Fokau
8692816401
Sort response headers in api renderer to keep the same order
2015-11-18 17:33:12 +01:00
Ryan Hiebert
a19f152065
Note possibility of overriding get_queryset
2015-11-18 10:26:00 -06:00
Andrei Fokau
802ee5d0ea
Fix template.render deprecation warnings for 1.9+
2015-11-18 17:06:35 +01:00
Ryan Hiebert
389b48e394
Avoid making a new module for this function
2015-11-18 08:19:27 -06:00
Tom Christie
04158e187e
Merge pull request #3513 from pattisdr/feature/ListField_needs_to_enforce_list
...
ListField does not enforce that input is a list
2015-11-18 12:19:40 +00:00
Ryan Hiebert
dca2de3a5c
Make the override check a utility function
2015-11-16 12:21:58 -06:00
Martin Hill
ff36cbe4ba
same logic, more pythonic
2015-11-14 23:04:32 -05:00
Martin Hill
bac6f1fcf4
check if field.to_fields is None
2015-11-14 18:26:29 -05:00
Martin Hill
e475464945
fix for issue #3634
2015-11-14 17:00:07 -05:00
Ryan Hiebert
fe12816b82
Move default validation back into init method
2015-11-13 15:16:27 -06:00
Denis Cornehl
3806af3d15
allow setting a custom Django Paginator in pagination.PageNumberPagination
2015-11-13 16:04:12 +01:00
d6bels
82eb4c8d71
Login form autofocus
2015-11-11 10:51:20 +01:00
Michael J. Schultz
abc6fa05e6
Markdown 2.1 compatible
2015-11-09 11:47:00 -06:00
Ryan Hiebert
f2452936e9
Allow no queryset when get_queryset overridden
...
The user may wish to provide a dynamic queryset on a `RelatedField`
based on the `context`. The way to do that is to create a subclass of
`RelatedField` (or a child) and override the `get_queryset` method.
However, this is undocumented, and instantiating that field without a
`queryset` argument (because it's not needed) will raise an assertion
error.
Document `.get_queryset(self)` as an official part of the API of
`RelatedField`, and don't enforce the use of `queryset` when
`get_queryset` is overridden.
2015-11-05 17:34:02 -06:00
Michael J. Schultz
b2e74fb523
Use markdown 2.6 extension_configs to configure extension
2015-11-05 10:52:31 -06:00
Michael J. Schultz
d9d34e4886
Use full python dot path to extension
2015-11-05 10:48:19 -06:00
Michael J. Schultz
276bc3bc2b
Remove safe_mode since it is not safe.
2015-11-05 10:47:56 -06:00
nfletton
f85ad301eb
Fix regression causing raw data form to not display
2015-11-04 15:43:25 -07:00
Tom Christie
33b512b1f2
Version 3.3.1
2015-11-04 14:49:57 +00:00
Tom Christie
544c24e7cb
Merge pull request #3593 from tomchristie/primary-key-check-for-to-field
...
Proper 'primary key' checking on to_fields.
2015-11-04 14:49:11 +00:00
Tom Christie
54b79db214
Proper 'is primary key' checking
2015-11-04 14:37:32 +00:00
Tom Christie
95f92e995c
Merge pull request #3560 from ericholscher/fix-empty-filter
...
Allow HTML to render when no filter_class is defined.
2015-11-04 14:20:03 +00:00
Tom Christie
bfdf795843
Merge pull request #3592 from tomchristie/request-parsing-when-post-accessed
...
Request parsing when .POST accessed
2015-11-04 14:17:55 +00:00
Tom Christie
d587ad1021
Use REST framework request parsing when accessing old-style .POST
2015-11-04 14:10:51 +00:00
Xavier Ordoquy
ce491b3424
Merge pull request #3568 from jpadilla/decimal-validator
...
Add compat util for DecimalValidator
2015-10-30 12:54:08 +01:00
José Padilla
08e4a98822
Merge pull request #3564 from mcastle/patch-1
...
Fix trans template tag error on admin
2015-10-30 06:29:25 -04:00
JocelynDelalande
3b25207099
typo
2015-10-29 16:20:44 +01:00
José Padilla
41d1e42e9c
Add compat util for DecimalValidator
2015-10-29 06:42:16 -04:00
Marlon
3c6ce9dfc0
Fix trans template tag error
...
Trans template tag requires `{% load i18n %}` at top of template.
2015-10-28 22:47:52 -05:00
Eric Holscher
32bd1a2f0b
Use better names for filter variable
2015-10-28 14:36:24 -07:00
Eric Holscher
378d6a1a19
Allow HTML to render when no filter_class is defined.
...
Previously it required a filter_class,
or else it would error when calling `cls()`.
This now sets the `filter` context to `None`
if one does not exist.
Fixes #3559
2015-10-28 12:39:20 -07:00
Rense VanderHoek
0d568ed59f
format_html was missing in optional_logout template-tag
...
The new format_html() was still missing in optional_logout template-tag
at the NoReverseMatch exception.
2015-10-28 18:48:58 +01:00
José Padilla
b8c9c809ff
Merge pull request #3547 from nikolas/bootstrap-3.3.5
...
Update bootstrap from 3.2.0 to 3.3.5
2015-10-28 09:42:01 -04:00
Tom Christie
bb555e6e5e
Version 3.3.0
2015-10-28 11:32:15 +00:00
Tom Christie
fa6f053323
Merge pull request #3544 from dursk/nested-as-form-fields
...
Correctly handle False in NestedBoundField.as_form_field()
2015-10-27 16:55:36 +00:00
Nik Nyby
8c6ded38de
Update bootstrap from 3.2.0 to 3.3.5
2015-10-26 10:40:59 -04:00
José Padilla
21cad8646a
Use format_html in tags that generate HTML
2015-10-25 08:31:28 -04:00
Matthew Madurski
8aed3d4862
Correctly handle false in nested as_form_field
2015-10-24 19:48:17 -04:00
Tom Christie
84e9013417
Merge pull request #3531 from tomchristie/version-3.3
...
Version 3.3
2015-10-23 16:24:08 +01:00
Tom Christie
0fb1ebcfcf
Remove unused import
2015-10-23 16:07:48 +01:00
José Padilla
d64bfef56a
Map all supported FilePathField options
2015-10-23 10:08:29 -04:00
auvipy
fa93d79026
removed south_migrations directory
2015-10-23 10:00:01 -04:00
auvipy
b71e6b596f
removed south migrations
2015-10-23 10:00:00 -04:00
Tom Christie
cf33008571
Release notes etc
2015-10-22 14:05:52 +01:00
Tom Christie
c53c9eddfe
Merge pull request #3315 from tomchristie/filters
...
First pass at HTML rendering for filters
2015-10-22 11:42:35 +01:00
Tom Christie
0c6d46729c
Docs on the filter HTML interface
2015-10-22 11:37:27 +01:00
Tom Christie
6305ae8916
Merge pull request #3475 from tomchristie/forms-api
...
Forms API
2015-10-22 09:59:57 +01:00
likeon
322bda8159
Added support for the to_field on ForeignKey fields
2015-10-21 15:33:18 +03:00
Dawn Pattison
8fa7c5c914
Exclude collections.Mapping from allowable data types in ListField
2015-10-20 08:56:39 -04:00
Tom Christie
34eb18b498
Merge branch 'master' into filters
...
Conflicts:
rest_framework/compat.py
rest_framework/filters.py
2015-10-19 13:14:42 +01:00
Omer Katz
2e178bc970
Replaced all dict and set conversions from lists to dict and set literals.
2015-10-17 12:00:11 +03:00
Dawn Pattison
dac1637bb3
Use set instead of Set
2015-10-16 16:06:18 -04:00
Dawn Pattison
b9316154b1
Add tuple and Set to allowed ListField data types
2015-10-16 16:02:13 -04:00
Dawn Pattison
f808f08a0d
Require that data is a list.
2015-10-16 14:43:43 -04:00
José Padilla
a1dad503cf
Map TextField max_length to CharField
2015-10-16 07:17:33 -04:00
Xavier Ordoquy
1b4a41cb80
Merge pull request #3502 from auvipy/master
...
removed south migrations
2015-10-15 10:41:07 +02:00
auvipy
4db2501399
removed south_migrations directory
2015-10-15 14:17:56 +06:00
auvipy
392df94693
removed south migrations
2015-10-15 14:16:35 +06:00
Aider Ibragimov
79008ea210
fix typo for adding jquery string in AdminRenderer
2015-10-14 15:56:26 +03:00
Aider Ibragimov
5342f22009
return typo back for new pr, update docs
2015-10-14 15:54:43 +03:00
Aider Ibragimov
b19865f88d
fix typo in adding jquery string, update docs about detail page link for AdminRenderer
2015-10-14 15:14:35 +03:00
Tom Christie
90247afe29
Docs on Forms API
2015-10-12 21:14:58 +01:00
Dulmandakh
431ac45168
Update compat.py
...
try to import guardian if it's in INSTALLED_APPS
2015-10-09 11:03:19 +08:00
Tom Christie
41182c6f06
Formns API
2015-10-06 10:58:20 +01:00
Marlon
670b0b710b
Use serializers.ValidationError
...
Per django rest framework docs, and to prevent confusion with Django's ValidationError, `serializers.ValidationError` is preferred to `exceptions.ValidationError`.
2015-09-30 21:09:37 -05:00
Philippe Ombredanne
3262ee6c90
Fixed minor doc typo.
2015-09-29 21:59:09 +02:00
Tom Christie
265ec8ac62
Handle binary or unicode with JSONField
2015-09-28 17:47:51 +01:00
Tom Christie
ec8098b7e2
Work around 2.x/3.x json.dumps() return type fuzziness
2015-09-28 17:32:36 +01:00
Tom Christie
10dbf1316f
Added JSONField. Closes #3170 .
2015-09-28 17:25:52 +01:00
Tom Christie
bae47b7f36
Merge pull request #3453 from tomchristie/remove-content-overriding
...
Remove content overriding
2015-09-28 16:42:42 +01:00
Tom Christie
c64896c849
More cleanup of browser overrides
2015-09-28 15:33:55 +01:00
Tom Christie
d7142e23ac
Merge branch 'master' into remove-content-overriding
2015-09-28 15:15:50 +01:00
Tom Christie
02e1f69d2b
Django 1.9 support
2015-09-28 11:44:07 +01:00
Tom Christie
2d0b54e263
Merge branch 'drop-django-16' oft https://github.com/carltongibson/django-rest-framework into carltongibson-drop-django-16
...
Conflicts:
docs/topics/release-notes.md
2015-09-28 11:17:48 +01:00
Tom Christie
ca8313aeac
Merge branch 'master' into version-3.3
...
Conflicts:
docs/topics/release-notes.md
2015-09-28 10:57:14 +01:00
Tom Christie
6284bceaaf
Merge pull request #3363 from tomchristie/dont-access-settings-on-import
...
Access settings lazily, not at module import.
2015-09-24 15:42:31 +01:00
Stian Jensen
62c000bc12
Use model error_messages when available
...
In the automatically applied UniqueValidator, use the error message from
error_messages defined in the model instead of the generic default
UniqueValidator message.
This fixes #2878 .
2015-09-23 15:20:44 +02:00
Tom Christie
51443166a8
Merge pull request #3431 from paolopaolopaolo/issue-3265
...
Guard against calling `serializer.data` before `serializer.save()`
2015-09-23 09:51:54 +01:00
paolopaolopaolo
7640bfea9e
Add assert
statement to .save()
method in Serializer:
...
- Asserts that `_data` does not exist when calling `.save()`
2015-09-22 11:49:51 -07:00
Carlton Gibson
45ace5010e
Remove OrderedDict fallback
2015-09-22 16:35:38 +02:00
Carlton Gibson
0b34408172
Remove unittest.skipUnless
2015-09-22 16:24:22 +02:00
Carlton Gibson
6e86a53c92
Remove apps.get_model
fallback
...
* Corrects presumed logic error in `ResolveModelWithPatchedDjangoTests`
2015-09-22 16:14:45 +02:00
Carlton Gibson
68c88e180f
Remove ContentType import fallback
2015-09-22 15:55:39 +02:00
Carlton Gibson
8ea1606abf
Remove Django 1.5 clean_manytomany_helptext fallback
2015-09-21 20:16:52 +02:00
Carlton Gibson
25de8c960f
Remove Django 1.5 get_model_name fallback
2015-09-21 20:10:31 +02:00
Carlton Gibson
4a1ab3c18c
Fix isort errors
2015-09-21 16:29:33 +02:00
Carlton Gibson
e625cff8a5
Remove Django 1.5 URLValidator fallback
2015-09-21 16:22:46 +02:00
Carlton Gibson
9216dc9a25
Remove Django 1.5 EmailValidator fallback
2015-09-21 16:20:07 +02:00
Xavier Ordoquy
26715c2dae
Merge remote-tracking branch 'origin/master' into release/3.2.4
2015-09-21 13:25:49 +02:00
Xavier Ordoquy
f2c65512c6
Merge pull request #3415 from adamsc64/issue_2761
...
Fixed #2761 - ListField truncation on HTTP PATCH
2015-09-21 13:06:44 +02:00
Xavier Ordoquy
089b8af4c1
Update the translations.
2015-09-21 08:07:56 +02:00
Xavier Ordoquy
d0510438b2
Bump version to 3.2.4.
2015-09-20 22:04:25 +02:00
Xavier Ordoquy
df26614e85
Translation update.
2015-09-20 21:59:47 +02:00
Christopher Adams
9ccfc94077
Fixed #2761 - ListField truncation on HTTP PATCH
...
- Checked ``partial`` state when getting value in appropriate field
classes; return ``empty`` immediately if key not submitted.
2015-09-19 10:18:04 -04:00
Tom Christie
eec1156f63
AJAX forms in admin interface
2015-09-17 16:53:28 +01:00
Tom Christie
343fd5ec3d
Merge branch 'canassa-method-not-allowed-not-raised' into remove-content-overriding
2015-09-17 16:39:30 +01:00
Tom Christie
4b4130e8b2
Fix request cloning, so method becomes set
2015-09-17 16:34:03 +01:00
Tom Christie
a3067bea55
Merge branch 'master' into version-3.3
2015-09-17 16:24:46 +01:00
Tom Christie
566812ac0b
Remove method and content overriding
2015-09-17 15:17:29 +01:00
Steven Loria
284f9faa07
Correctly handle [] and {} as invalid inputs to BooleanField
2015-09-11 23:12:18 -04:00
Xavier Ordoquy
4404d40f60
Only pass allow_empty to the ListSerializer
if it was in the arguments.
...
Helps with backward compatibility.
2015-09-06 23:02:44 +02:00
Tom Christie
f9e53091c1
Drop handling of ImproperlyConfigured
2015-09-03 16:40:12 +01:00
Tom Christie
8b7ebb9d2c
Fixed import sorting
2015-09-03 16:29:13 +01:00
Xavier Ordoquy
dcdd765647
Avoid passing allow_empty to the ListSerializer children.
2015-09-03 17:27:33 +02:00
Tom Christie
10da18b20b
Access settings lazily, not at module import
2015-09-03 16:24:13 +01:00
Tom Christie
39ec564ae9
Do not access settings on compat import
2015-09-03 14:22:13 +01:00
Tom Christie
e9e88cbc60
Merge branch 'master' of github.com:tomchristie/django-rest-framework
2015-09-03 11:24:07 +01:00
Tom Christie
f9d1a34fdd
Fix nested HTML dictionaries. Closes #3314 .
2015-09-03 11:23:58 +01:00
Tom Christie
afd2a8f8f0
Adjust ModelField.null mappings now that Django-25320 is resolved
2015-09-03 10:12:52 +01:00
raphaelmerx
b9782b6850
DurationField accepts integers
2015-09-02 16:47:50 -07:00
Tom Christie
f87573ffa3
Merge pull request #3345 from jpadilla/fields
...
Update ModelSerializer 'fields'/'exclude'/'__all__' behavior
2015-08-28 14:57:05 +01:00
Tom Christie
f34777a2e9
Translations for HTML filters
2015-08-28 14:55:22 +01:00
Tom Christie
78632849cf
Comment against model_field.null 1.98 behavior
2015-08-28 13:29:57 +01:00
Tom Christie
8db6367188
Deal with 1.9's differing null behavior on reverse relationships and m2m
2015-08-28 12:08:32 +01:00
Tom Christie
b51c1ff0b0
Django 1.9's test case HttpResponse.json() is not cachable.
2015-08-28 11:55:23 +01:00
Tom Christie
a5ddd90df0
Log in and log out require escape and mark_safe
2015-08-28 10:27:49 +01:00
Tom Christie
24a2c3f5c3
Resolve unittest compat
2015-08-28 10:19:18 +01:00
Tom Christie
e70da5ac6b
Compat for GenericForeignKey, GenericRelation
2015-08-28 10:03:08 +01:00
José Padilla
654e0e4527
Update ModelSerializer fields behavior
2015-08-27 13:09:08 -04:00
Tom Christie
4f27697467
Fix get_model import
2015-08-27 17:28:12 +01:00
Tom Christie
48540f180a
unittest compat fallback
2015-08-27 17:11:53 +01:00
Tom Christie
0b77e733a8
Don't display filter control on detail views
2015-08-27 14:35:39 +01:00
Tom Christie
9bcb1477e2
Minor tweaks
2015-08-27 14:28:28 +01:00
Tom Christie
aeb57913c9
Filter HTML refinments
2015-08-27 14:25:44 +01:00
Tom Christie
ea630bf3d1
Merge branch 'master' into filters
2015-08-27 14:02:15 +01:00
Rikuoja
65df9fd5c6
Fix #3323
2015-08-24 17:02:49 +03:00
Tom Christie
0198bce34f
Release 3.2.3
2015-08-24 10:59:52 +01:00
Tom Christie
b271946b31
Merge pull request #3321 from tomchristie/empty-charfield-html
...
Resolve empty HTML charfield behavior.
2015-08-24 10:41:36 +01:00
Tom Christie
9ac646385f
Resolve empty HTML charfield behavior. Closes #3318 .
2015-08-24 10:13:16 +01:00
Tom Christie
5db900c625
First pass at HTML rendering for filters
2015-08-21 16:13:52 +01:00
borzdyko
314daaedfa
Using https://docs.djangoproject.com/en/1.8/ref/models/querysets/#regex for search filter by starting field with '$'
2015-08-21 18:13:13 +03:00
Tom Christie
c271568bf5
Remove erronous checkin
2015-08-21 10:57:46 +01:00
Tom Christie
314c0095aa
iter_options function should have no cutoff by deault
2015-08-21 10:56:22 +01:00
Tom Christie
99beeb80e1
No cutoff for default ChoiceField, only for relationships
2015-08-21 10:53:10 +01:00
Tom Christie
f4412d0827
Docs for select cutoffs
2015-08-21 10:52:44 +01:00
Tom Christie
b6c4d8c25a
Resolve duplicate error for IPAddressField. Closes #3250 .
2015-08-20 12:38:48 +01:00
Tom Christie
75be91912c
Allow AdminRenderer to function when pagination is disabled. Closes #3275 .
2015-08-20 12:28:00 +01:00
Tom Christie
d86fd67895
Fix display of select multiple HTML fields. Closes #3290 .
2015-08-20 12:11:14 +01:00
Tom Christie
b4b2dc18fa
Clean-up refactoring of SearchFilter implementation
2015-08-20 11:35:32 +01:00
Tom Christie
aa4cd7e9d7
Guard against LimitOffsetPagination edge case. Closes #3303 .
2015-08-20 10:12:52 +01:00
José Padilla
8af366a732
Raise error when source=
use on a child.
...
Closes #3292
2015-08-19 12:32:16 -04:00
Omer Katz
792005806b
Cached the field's root and context property.
2015-08-18 12:38:13 +03:00
Ollie Walsh
332c30afb9
Lint
2015-08-14 12:20:25 +01:00
Ollie Walsh
3d0292e1cd
Do not ignore overridden View.get_view_name() in breadcrumbs
2015-08-14 12:16:57 +01:00
Tom Christie
1b53e804ee
3.2.2 Release
2015-08-13 10:23:22 +01:00
Tom Christie
0e6c467851
Merge pull request #3263 from jgadelange/master
...
Resolved issue with rendering of nested serializers form when value is None
2015-08-13 10:16:19 +01:00
Tom Christie
18af181191
Fix boolean checkboxes setting to False. Closes #3258 . Closes #2776 .
2015-08-13 09:56:03 +01:00
Jeffrey de Lange
f5a9904cc8
Resolved issue with rendering of nested serializers form when value is None
2015-08-11 20:27:41 +02:00
Tom Christie
a3e64fbe0d
Resolve issue with rendering nested serializer forms with empty values. Closes #3260 .
2015-08-11 16:25:02 +01:00
Tom Christie
0df99a6c95
Fix erronous request.files docs, and incorrect request.FILES behavior. Closes #3261 .
2015-08-11 16:21:02 +01:00
Tom Christie
b7e47e3d67
Merge branch 'master' of github.com:tomchristie/django-rest-framework
2015-08-11 09:24:16 +01:00
Tom Christie
83e49dbe63
Fix checkbox input display. Refs #3258 .
2015-08-11 09:23:49 +01:00
Tom Christie
4509dbc24e
Merge pull request #3241 from jpadilla/master
...
Raise error if passed a serializer instance
2015-08-10 17:41:01 +01:00
James Beith
5c0a2b79b3
Remove converting a string in to a string
...
The `display_value` method returns a text type.
2015-08-10 15:33:04 +01:00
James Beith
2f6e5d0509
Add display value method
...
Returns the text representation of the instance. Subclasses can override this method to provide a different display value used for populating the `choices` property.
2015-08-10 11:03:57 +01:00
José Padilla
7a0416c50b
Raise error if passed a serializer instance
2015-08-07 13:12:37 -04:00
Tom Christie
0cbfbc27d8
Tweak erronous assignment
2015-08-07 15:41:46 +01:00
Tom Christie
3ea394dbff
Version 3.2.1
2015-08-07 14:55:18 +01:00
Tom Christie
368fb9fb2a
Merge pull request #3238 from kezabelle/bugfix/3235
...
Fixed #3235 - ListField now returns the QueryDict value even if it's a list of only one item.
2015-08-07 14:44:32 +01:00
Tom Christie
65e1c938eb
Fix for 1, 0 being rendered as true, false in the admin. Closes #3227 .
2015-08-07 14:38:36 +01:00
Tom Christie
e63dcab8b3
Fix for rendering select templates on relationships
2015-08-07 14:36:00 +01:00
Tom Christie
88609ba3a3
Merge branch 'master' of github.com:tomchristie/django-rest-framework
2015-08-07 14:24:37 +01:00
Tom Christie
19c1976fcc
Leave requests.FILES alone, for compat with regular Django requests. Closes #3239 .
2015-08-07 14:24:28 +01:00
Keryn Knight
0078f66104
Fixed #3235 - A querydict which yields a list with only one value now correctly returns the provided data.
2015-08-07 11:43:17 +01:00
Tymur Maryokhin
4e5da16961
Remove Django 1.4 compat code
2015-08-07 00:02:29 +02:00
Tom Christie
67ddd54a89
Merge pull request #3226 from tomchristie/version-3.2
...
Version 3.2
2015-08-06 14:30:46 +01:00
Tom Christie
b4f1a8a367
Update translations
2015-08-06 13:22:53 +01:00
Tom Christie
78053c7e6c
Upgrade version to 3.2.0
2015-08-06 13:18:51 +01:00
Tom Christie
24dec32e7a
Added test_iter_options
2015-08-06 12:18:09 +01:00
Tom Christie
4d69286efa
Use same structure for both .choices and .grouped_choices
2015-08-06 12:03:38 +01:00
Tom Christie
a6fefe78ff
Added docstring
2015-08-06 11:44:39 +01:00
Tom Christie
27ac5a3680
Support grouped choices
2015-08-06 11:43:03 +01:00
Tom Christie
95a1550388
Merge branch 'grouped-choices-fix' of https://github.com/maxpeterson/django-rest-framework into maxpeterson-grouped-choices-fix
2015-08-06 10:04:52 +01:00
Tom Christie
38a1b3ec6b
Rationalize decimal logic. Closes #3222 .
2015-08-06 09:51:00 +01:00
Tom Christie
f7d44dfae0
Loud errors on request.DATA et al.
2015-08-05 17:07:47 +01:00
Tom Christie
6942fa5dab
Mask view docstring on 401 and 403 responses. Closes #3216 .
2015-08-05 13:59:55 +01:00
Tom Christie
6161ac7d07
Fix parse_html_dict signature. Closes #3212 .
2015-08-05 13:45:56 +01:00
Tom Christie
7b51508600
Error on double underscore ordering with CursorPagination. Refs #3221 .
2015-08-05 13:42:44 +01:00
Tom Christie
bf35906dc0
FilePathField subclassing from ChoiceField
2015-08-03 10:17:41 +01:00
Tom Christie
877e964d7e
Don't need to support Django 1.4 with FilePathField.
2015-08-03 10:15:28 +01:00
Tom Christie
8d7c0a8474
Merge branch 'feature/filepathfield' of https://github.com/Ins1ne/django-rest-framework into Ins1ne-feature/filepathfield
2015-08-03 10:09:46 +01:00
Tom Christie
650866cc43
Blank relational fields map to required=False serializer fields. Closes #3210 .
2015-08-03 09:48:03 +01:00
Tom Christie
472784b70a
Docs for custom hyperlinked fields.
2015-08-03 09:27:03 +01:00
Tom Christie
a543fae180
Merge pull request #2766 from delinhabit/allow-null-list-serializer
...
Modify subtle ChildSerializer(many=True, allow_null=True) behavior.
2015-07-31 10:11:21 +01:00
Tom Christie
e68d737825
Respect blank on many to many, and set allow_empty=False if it is not present. Closes #2804 .
2015-07-30 17:03:08 +01:00
Tom Christie
ed3f9593af
Merge branch 'version-3.2' into remove-url-from-future
2015-07-30 16:02:40 +01:00
Tom Christie
1b3b01e042
Remove unused imports
2015-07-30 15:59:27 +01:00
Tom Christie
c8ad0cce19
Bump minimum Django version to 1.5
2015-07-30 15:43:39 +01:00
Tom Christie
c203ca4c64
Deprecations
2015-07-30 15:26:42 +01:00
Tom Christie
5b39d820be
Remove 'load url from future' tags in templates.
2015-07-30 15:14:02 +01:00
Tom Christie
1f55bc747b
Merge pull request #2926 from tomchristie/admin-style
...
Admin style renderer
2015-07-30 15:01:37 +01:00
Tom Christie
79b825ef32
Drop unused import
2015-07-30 14:38:04 +01:00
Tom Christie
5c1d6a9200
Docs for AdminRenderer
2015-07-30 14:07:51 +01:00
Hachikooking
d2ae7d4fcd
Add args to the function call for unnamed parameters
2015-07-29 14:43:25 +02:00
clemence.lop
2109f55244
Correct API ROOT to enable parametered urls
2015-07-28 15:55:49 +02:00
Tom Christie
6e3ba202af
Merge pull request #2690 from delinhabit/hyperlinked-relation-callable-source
...
Support source='some_method' for HyperlinkedRelatedField.
2015-07-27 16:19:48 +01:00
Ion Scerbatiuc
d4353cc1fd
Moved the code comment inside the if block and removed whitespace
2015-07-27 07:57:05 -07:00
Ion Scerbatiuc
0386a01673
Addressed CR comments
2015-07-27 07:45:35 -07:00
Tom Christie
402fb39396
HStoreField maps to ListField(CharField(allow_blank=True). Closes #2659 .
2015-07-27 13:18:49 +01:00
Tom Christie
f1e2135b04
Restyle horizontal checkbox. Closes #2783 .
2015-07-27 13:11:24 +01:00
Tom Christie
798cd1a637
Fix for DjangoObjectPermissionsFilter with Guardian < 1.3
2015-07-27 10:20:37 +01:00
Ion Scerbatiuc
47a22a55ca
Added a possible fix
2015-07-25 09:44:00 -07:00
Ion Scerbatiuc
bf25a6ecbc
Test case for using allow_null
with many=True
and a fix for it
2015-07-25 08:10:15 -07:00
Tom Christie
bdeb28944f
Use RuntimeError, not AssertionError when guarding against direct View.queryset evalutation. Refs #3180 .
2015-07-24 09:13:39 +01:00
Tom Christie
108dfafa44
Fix Django 1.5/1.4 compat issue
2015-07-24 09:02:16 +01:00
Tom Christie
c0e3e670ca
Fix Django compat for Queryset import
2015-07-23 17:43:49 +01:00
Tom Christie
e05021c8c6
Guard against erronous direct .queryset evaluation in CBVs.
2015-07-23 17:17:18 +01:00
Tom Christie
4c1597efe0
Error modals
2015-07-23 16:16:48 +01:00
Tom Christie
b996266431
Merge master
2015-07-23 15:28:29 +01:00
Tom Christie
92008d3d16
None -> '' in the context of form field values
2015-07-23 14:36:23 +01:00
Tom Christie
90fe0fb881
Errors in browsable API on error. Closes #3024 .
2015-07-23 14:31:25 +01:00
Tom Christie
22631c73a7
Resolve assertion error with LimitOffsetPagination and erronous parameters. Closes #2920 .
2015-07-23 12:41:35 +01:00
Aider Ibragimov
205f388631
fix import sort order
2015-07-19 01:32:51 +03:00
Aider Ibragimov
c4f1c98572
fix lint issues
2015-07-19 01:22:57 +03:00
Aider Ibragimov
a1397ac699
fix bugs, move version branching to compat, update ModelSerializer mapping
2015-07-19 00:26:03 +03:00
Aider Ibragimov
d845157983
Merge branch 'master' of https://github.com/tomchristie/django-rest-framework into feature/filepathfield
2015-07-18 23:34:07 +03:00
Tom Christie
85cc8e9f1a
Merge pull request #3168 from tomchristie/error-on-erronous-commit-argument
...
Helpful error on erronous 'serializer.save(commit=False)'
2015-07-17 12:50:06 +01:00
Tom Christie
138e9fcc8f
Helpful error on erronous 'serializer.save(commit=False)'
2015-07-17 12:39:22 +01:00
Tom Christie
788aae2aaf
Upgrade guardian support to 1.3. Closes #3163 .
2015-07-16 16:46:07 +01:00
Tom Christie
0ccb148183
Support QueryDict list arguments with ListField. Closes #3155 .
2015-07-16 15:59:15 +01:00
Tom Christie
e14391e041
Fix for ModelSerializer ChoiceField with nonstandard args. Closes #3126 .
2015-07-16 15:46:27 +01:00
Tom Christie
713333d354
Merge branch 'master' of github.com:tomchristie/django-rest-framework
2015-07-16 15:17:27 +01:00
Tom Christie
806b0b34da
Include nested objects in metadata for OPTIONS. Closes #3156 . Closes #2915 .
2015-07-16 15:17:18 +01:00
Tom Christie
264d423493
Added allow_empty flag for ListField, ListSerializer, ManyRelation, MultipleChoiceField.
2015-07-16 13:51:15 +01:00
Tom Christie
a8acdbc388
Resolve issue with nested serializers in HTML forms. Closes #3153 .
2015-07-16 12:04:38 +01:00
Tom Christie
d231f36588
Support default values being used for empty HTML fields. Closes #3130 .
2015-07-16 11:47:40 +01:00
Tom Christie
7315ed8b00
Resolve browsable API form issues with nested serializers. Closes #3153 .
2015-07-16 10:49:00 +01:00
Tom Christie
c879aaf398
page_size needs to be stored as state on CursorPagination. Refs 3147.
2015-07-16 10:26:16 +01:00
Tom Christie
a9f1d99cb5
Fix 'metadata' action on viewsets. Closes #3158 . Closes #3157 . Closes #3115 .
2015-07-16 10:08:22 +01:00
Tom Christie
6b08e97b6a
Form fields should use textual only value representations. Closes #3139 . Closes #2416 . Closes #2558 .
2015-07-14 15:47:13 +01:00
Tom Christie
132eab7bbd
Raise helpful error when erronously including nested data in multipart post requests with test client. Closes #2919 .
2015-07-14 14:49:44 +01:00
Tom Christie
c14ad7add7
Handle .choices for related fields when queryset argument is actually a mamanger instance. Closes #3145 .
2015-07-14 13:31:24 +01:00
Tom Christie
1b51bcdbae
Merge branch 'master' of github.com:tomchristie/django-rest-framework
2015-07-14 13:21:20 +01:00
Tom Christie
bca2ea35df
Ensure that realtionship fields '.choices' returns an empty dict when accessed with a read-only field. Closes #2910 .
2015-07-14 13:21:08 +01:00
Tom Christie
9c952dcfe9
Merge pull request #3147 from tomchristie/uploadcare-cursor-limits
...
Add `get_page_size` hook to `CursorPagination`
2015-07-14 12:44:13 +01:00
Tom Christie
468361425d
page_size should be local, not overwriting class attribute.
2015-07-14 12:32:27 +01:00
Tom Christie
3c57e08f62
Clarifications to read_only fields. Closes #3064 .
2015-07-14 12:22:51 +01:00
Tom Christie
2b51d5594b
Remove whitespace and comment changes
2015-07-14 11:41:25 +01:00
Tom Christie
14a32ae32d
Add get_page_size hook to CursorPagination. Closes #3068 .
2015-07-14 11:40:15 +01:00
Tom Christie
1d012aeb93
Merge branch 'cursor-limits' of https://github.com/uploadcare/django-rest-framework into uploadcare-cursor-limits
2015-07-14 11:37:18 +01:00
Tom Christie
209bcb9087
Added url_field_name class attribute to ModelSerializer. Closes #3106 .
2015-07-14 11:21:33 +01:00
Tom Christie
538ffaf6c7
Store self.action='metadata' for OPTIONS requests on viewsets. Closes #3115 .
2015-07-14 11:13:26 +01:00
homm
a3afcfb6d3
duplicate get_page_size
and related properties from PageNumberPagination
2015-07-13 14:44:48 +03:00
homm
59905e9335
revert BasePageSizePagination class and CursorPagination inheritance
2015-07-13 14:36:47 +03:00
Juan Gutierrez
b0c5f9db2f
allow a non-required nested serializer to validate correctly when receiving multipart data
2015-07-03 12:28:48 -04:00
Max Peterson
ee2afb83e2
Fix 1.4 tests and make flatten_choice a utility.
2015-07-03 13:56:49 +01:00
Max Peterson
56b3f19605
Add support for grouped choices.
...
This also adds support for mixing single and paired choices:
```
[
('poor', 'Poor quality'),
'medium',
('good', 'Good quality'),
]
```
2015-07-03 12:27:01 +01:00
Julien Syx
2b979d4356
Adding recursion on child of List Field
2015-07-02 14:15:43 +02:00
Tom Christie
8d69c4c068
Improve OPTIONS descriptions for lists dicts and nested serializers
2015-07-02 12:55:42 +01:00
Tom Christie
e6ca0fcb4c
Remove erronous newline
2015-07-02 11:53:05 +01:00
Tom Christie
37815920e3
Update to master and tweak remaining issues
2015-07-02 11:50:40 +01:00
Tom Christie
055986b5b0
More helpful exception when URL cannot reverse and field value was empty. Closes #2698 .
2015-07-02 11:36:14 +01:00
Tom Christie
c4f908d4ee
Introduce datetime_parser as class level attribute on all date/time fields. Refs #3093 .
2015-07-02 11:23:52 +01:00
Tom Christie
6ce9e3baf0
Remove datetime_parser argument from DateTimeField
2015-07-02 11:22:18 +01:00
Tom Christie
6d79ea2cde
Merge pull request #3093 from sorreltree/master
...
Ability to customize DateTimeField with a custom datetime_parser
2015-07-02 11:21:25 +01:00
Tom Christie
fb4233736f
Empty settings should also be coerced to lists. Closes #3087 .
2015-07-02 10:28:46 +01:00
Tom Christie
d979dc6522
Tweak exception message
2015-07-02 10:16:43 +01:00
Tom Christie
e3c3d8826f
Merge pull request #3071 from antonyc/patch-1
...
Made exception message more verbose
2015-07-02 10:14:01 +01:00
Tom Christie
39ed03c21c
Merge pull request #3088 from atleta/master
...
Handle AttributeError as well (when the imported module exists but the specified function/class does not).
2015-07-02 09:52:53 +01:00
Tyler Redzko
af08c70242
Update extra_kwargs on model serializer
...
Ensures that the 'read_only' and 'required' keys from `extra_kwargs` are
retained when present. Closes #3091 .
2015-07-01 10:10:18 -04:00
Michael Bacon
5f40ab53de
Ability to customize DateTimeField with a custom datetime_parser
2015-06-30 14:51:47 -04:00
Laszlo Marai
f0bced6413
Handle AttributeError as well (when the imported module exists but
...
the specified function/class does not).
2015-06-30 05:49:44 +02:00
Venelin Stoykov
c3c9a712fa
Fix ManyRelatedField.choices
...
Use choices from self.child_relation.
We don't need to repeat ourself because can get out of sync.
2015-06-29 15:35:55 +03:00
José Padilla
7351a3f6ca
Sort imports with isort
2015-06-25 16:55:51 -04:00
José Padilla
83c9136c90
Cleanup import following PEP 8 style guide
2015-06-25 16:10:17 -04:00
Shtarev
e8b23c4789
thin logic
2015-06-25 21:14:00 +03:00
Tom Christie
47765bc429
Merge pull request #3034 from m-vellinga/master
...
Use get_queryset() for RelatedField choices property
2015-06-25 16:41:43 +01:00
José Padilla
d6e30c75ff
Add test and fix for #2704
2015-06-25 09:35:36 -04:00
Tom Christie
321133242f
Unsaved file objects may not have an associated URL.
2015-06-24 14:24:19 +01:00
Tom Christie
39ece9bee0
Support allow_blank=False with trim_whitespace=True.
2015-06-24 13:32:54 +01:00
Tom Christie
8329411cc3
Merge pull request #2539 from donewell/permission-detail
...
add message to custom permission
2015-06-24 11:32:02 +01:00
Tom Christie
8d4c96ecd6
Merge pull request #3012 from jannon/fix-allow-blank-mapping
...
only include 'allow_blank' on supported fields
2015-06-24 11:01:10 +01:00
Anton Chaporgin
47acec0f9d
Made exception message more verbose
...
This exception helps you to upgrade from 2 -> 3 and since a lot of fields may be in 2 using serializers.Field as parent class, this message should contain at least name of upgraded field to help user to grep and fix the codebase faster.
2015-06-24 11:59:49 +03:00
homm
30b36a594f
use PageSizePaginationMixin for CursorPagination
...
tests for custom page_size in CursorPagination
2015-06-23 19:14:10 +03:00
homm
60656e9182
merge CursorPagination.decode_cursor
and _decode_cursor
...
merge `CursorPagination.encode_cursor` and `_encode_cursor`
2015-06-23 19:00:42 +03:00
homm
9a5373d41c
make PageSizePaginationMixin from all this page_size stuff
2015-06-23 18:19:38 +03:00
homm
ab03729b58
allow cursor format customization
2015-06-23 18:00:26 +03:00
José Padilla
83ef64dbf5
Document setting URL_FORMAT_OVERRIDE to None
...
This also hides the format dropdown from the
Browsable API if URL_FORMAT_OVERRIDE is disabled.
Closes #3057
2015-06-23 07:50:44 -04:00
Tom Christie
1e678791de
Merge pull request #2922 from thedrow/patch-11
...
Cache fields list for to_internal_value and to_representation
2015-06-23 08:53:32 +01:00
Tom Christie
e3b578258a
Merge pull request #2769 from nonZero/patch-1
...
Wrong error message on bad field lookup
2015-06-22 17:04:04 +01:00
Tom Christie
15a386e85d
Merge pull request #3045 from paxnovem/issue_3042
...
Fixed many=False issue on related fields
2015-06-22 15:40:59 +01:00
Markus Korn
b42b16d0e6
compat: invert logic for checking the django version when implementing
...
RequestFactory.generic()
2015-06-22 16:13:42 +02:00
Markus Korn
06c61fc511
compat: only add compat implementation of RequestFactory.generic() if not
...
provided by django
2015-06-22 14:05:56 +02:00
Omer Katz
1701ddae35
Fixed formatting of _readable_fields list comprehension to match the formatting of the _writable_fields list comprehension.
2015-06-20 08:51:03 +03:00
Brian Grohe
51cda112f5
Simplified if statement to one line solution
...
Based on feedback on the pull request, changed solution to
be simpler for issue 3042
2015-06-19 09:21:35 -04:00
José Padilla
5e917789ec
Consistent 2 space tabbing and formatting
2015-06-18 09:00:05 -04:00
Brian Grohe
d24990ece2
Fixed many=False issue in related fields
...
Added check to pop many from kwargs before passing to __init__
Fixed my lint issue from the previous commit
2015-06-17 13:48:34 -04:00
Jannon Frank
2c415d7e03
models.TextFields get mapped to serializers.CharField too
2015-06-16 14:05:19 -07:00
Xavier Ordoquy
139ba7adeb
Merge pull request #3006 from osantana/master
...
Handle invalid characters in "Authorization: token ..." headers
2015-06-16 22:40:15 +02:00
José Padilla
0be6d87fac
Fix versioning urls
2015-06-15 16:51:37 -04:00
José Padilla
7f0acbd5a5
Merge pull request #3026 from linovia/feature/format_suffix_patterns_and_trailing_slash
...
`format_suffix_patterns` is applied before the trailing slash.
2015-06-15 16:38:12 -04:00
Thomas Stephenson
a1e0bae9da
Custom serialization of PrimaryKeyRelatedField values
...
Adds a 'pk_field' parameter which can be used to proxy serialization and
deserialization of arbitrary primary key values.
2015-06-15 04:43:49 +10:00
Kevin Brown
b0889446a5
Merge pull request #3027 from linovia/feature/url_patterns_removal
...
Remove `django.conf.urls.pattern`
2015-06-11 16:40:40 -04:00
Xavier Ordoquy
1e51230f1b
Remove django.conf.urls.pattern
as it'll be removed in Django 2.0
2015-06-11 00:45:23 +02:00
Xavier Ordoquy
e7e5946c2e
format_suffix_patterns
is applied before the trailing slash.
2015-06-11 00:32:05 +02:00
hellysmile
c292b3d132
Fix set_rollback on @transaction.non_atomic_requests.
2015-06-08 07:10:57 +03:00
Ash Hoover
35c28a2a71
Include correct limits in LimitOffsetPagination link urls
2015-06-05 08:56:33 -07:00
Jannon Frank
b0752217ae
only include 'allow_blank' on CharField
2015-06-05 02:21:13 -07:00
Xavier Ordoquy
8935db1be9
Merge pull request #3003 from linovia/release/3.1.3
...
Release 3.1.3
2015-06-04 15:04:55 +01:00
Xavier Ordoquy
9a20609223
Merge pull request #3004 from linovia/translations/3.1.3
...
Translations updated for 3.1.3
2015-06-04 14:59:32 +01:00
Tom Christie
a3d6601e09
Merge pull request #3008 from linovia/feature/ipaddress-fix
...
`IPAddressField` improvements
2015-06-04 14:54:50 +01:00
Tom Christie
e8cc948f6b
Merge pull request #2695 from delinhabit/refactor-decimalfield
...
[enhancement] Refactored DecimalField to allow easier subclassing
2015-06-04 14:26:28 +01:00
Xavier Ordoquy
dee5fb5647
Merge remote-tracking branch 'reference/master' into feature/ipaddress-fix
...
Conflicts:
docs/api-guide/fields.md
2015-06-04 14:21:33 +01:00
Osvaldo Santana Neto
7ae71deb84
Handle invalid characters in headers
2015-06-03 14:55:34 -03:00
Xavier Ordoquy
051b86e6fd
Translations updated for 3.1.3
2015-06-03 17:34:13 +01:00
Xavier Ordoquy
f3dbe9bb2a
Bump to version 3.1.3
2015-06-03 16:57:18 +01:00
Xavier Ordoquy
0c66c7cfa6
Merge pull request #3000 from linovia/ovangle/uuid_format2
...
Add 'format' argument to UUIDField
2015-06-03 12:32:23 +01:00
Tom Christie
b1b47036d7
Use six.text_type for hyperlink names
2015-06-03 11:53:27 +01:00
Tom Christie
99e97fa9d3
Cleanup hyperlink rendering implementation
2015-06-03 11:47:33 +01:00
Tom Christie
ae704eec58
Fix issue with pagination control always displaying
2015-06-03 11:35:03 +01:00
Tom Christie
25bb3b1502
Use chevron control for row linking, rather than hyperlinking first item
2015-06-03 11:15:54 +01:00
Tom Christie
90f2e26679
Add Hyperlink and rendering in admin style renderer
2015-06-03 11:00:38 +01:00
Shtarev
745d8d0004
added comment
2015-06-03 09:04:28 +03:00
Xavier Ordoquy
734bf3cfe6
Merge pull request #2981 from jannon/fix-model-serializer-metadata
...
Read-Only RelatedField Metadata Failure Test and Fix
2015-06-02 15:09:05 +01:00
Xavier Ordoquy
0c97dd1806
Merge remote-tracking branch 'reference/master'
2015-06-02 13:04:57 +01:00
Xavier Ordoquy
8fa3284620
Merge remote-tracking branch 'reference/master'
2015-06-02 10:24:28 +01:00
Jannon Frank
a97c989248
fix read_only related field metadata
2015-06-02 00:40:00 -07:00
Nicolas Delaby
c2d2417237
Tell default error handler to doom the transaction on error
...
if `ATOMIC_REQUESTS` is enabled.
2015-06-02 09:19:58 +02:00
Xavier Ordoquy
d79956d40e
Translation update.
2015-06-02 00:20:46 +01:00
Xavier Ordoquy
f8eacc5bc0
Merge pull request #2993 from linovia/bug/2894
...
MultipleChoiceField empties incorrectly on a partial update using multipart/form-data (#2894 )
2015-06-01 17:48:20 +01:00
Xavier Ordoquy
14055dd3f4
Merge pull request #2989 from ticosax/duration-field
...
Add DurationField
2015-06-01 17:38:57 +01:00
Nicolas Delaby
f701ecceb7
Add DurationField
2015-06-01 18:20:53 +02:00
Xavier Ordoquy
5c90bf9cc0
Fix for #2894 thanks to @carljm
2015-06-01 16:13:35 +01:00
Xavier Ordoquy
e3f856ff1d
Merge pull request #2975 from sheppard/read-only-nested
...
can't create nested serializers for unique_together relations
2015-06-01 12:01:40 +01:00
Corentin Smith
fa29f7dd1f
Fix minor typo
2015-05-30 17:57:35 +02:00
Xavier Ordoquy
ecb3ba5e1f
Merge pull request #2948 from bimusiek/master
...
Added test ensuring DecimalField accepts `2E+2` as 200 and validates decimal place correctly.
2015-05-29 11:52:33 +02:00
S. Andrew Sheppard
8c7b5fc5c1
pop required extra_kwargs if read_only is set
2015-05-27 21:14:13 -05:00
Tom Christie
95a27a108d
Merge pull request #2933 from cancan101/overide_method_action
...
Set the action on a view when override_method regardless of its None-ness
2015-05-27 09:10:58 +01:00
Petros Moisiadis
192719eed0
Improve coding style
...
On Tom's suggestion, improve coding style by using a single-line call to getattr() with a default value instead of a multi-line if/else clause.
2015-05-19 20:00:19 +03:00
Petros Moisiadis
a96ebd74b1
Fix flake8 error
...
Fix flake8 error
2015-05-19 19:48:53 +03:00
Petros Moisiadis
c63ea01f4f
Support User model in Django 1.4 that has not a USERNAME_FIELD attribute
...
Support User model in Django 1.4 that has not a USERNAME_FIELD attribute.
2015-05-19 19:05:50 +03:00
Tom Christie
c916ad6315
Handle create and delete redirects
2015-05-19 16:30:45 +01:00
Petros Moisiadis
43b4ae752d
Import get_user_model from compat module
...
Import get_user_model from compat module to be compatible with older django versions (e.g. 1.4).
2015-05-19 18:00:17 +03:00
Petros Moisiadis
a13075486d
Compatibility code for getting user model
...
Compatibility code for getting user model
2015-05-19 17:57:27 +03:00
Tom Christie
ec8e7f27e7
Fixes for format preservation
2015-05-19 15:49:37 +01:00
Petros Moisiadis
bb002262ac
Support basic authentication with custom user models that change username field
...
Support basic authentication with custom user models with a username field that is not named 'username'.
2015-05-19 17:42:44 +03:00
Michał Hernas
e8c226c2db
Fixed lint problems
2015-05-18 16:55:40 +02:00
Michał Hernas
069ea31cfb
Added test ensuring DecimalField accepts 2E+2
as 200 and validates
...
decimal place correctly.
2015-05-18 16:42:24 +02:00
Omer Katz
67ff078388
Renamed the cached fields lists.
2015-05-17 09:54:33 +03:00
David Sanders
b7edd46313
Use simpler dict.get() rather than try/except
2015-05-16 01:01:27 +10:00
tony
0906bf2c08
fix empty and_query
2015-05-15 16:44:12 +03:00
tony
de95598a1e
removed using view.model.objects
2015-05-15 13:46:56 +03:00
David Sanders
8e84a9f6d0
Allow invalid outputs to pass through to_representation() for ChoiceField & MultipleChoiceField
2015-05-15 18:59:10 +10:00
Tom Christie
b4d82a0f55
Preserve format query param
2015-05-15 09:18:45 +01:00
tony
c47ec60ea2
no need to do distinct on every loop cycle & add analogue of distinct for oracle users
2015-05-14 17:04:22 +03:00
tony
7813d2fb35
fix DISTINCT for Oracle databases
2015-05-14 13:57:36 +03:00
Xavier Ordoquy
1a8c0b4bfc
Merge pull request #2930 from linovia/release/3.1.2
...
Release 3.1.2
2015-05-14 10:57:33 +02:00
Alex Rothberg
a804d0bd75
set the action when override_method regardless of its None-ness
2015-05-13 22:53:32 -04:00
Tom Christie
ea1145c5aa
Merge pull request #2905 from ticosax/django-object-perm-get_queryset
...
Allow DjangoObjectPermissions to use views that define get_queryset
2015-05-13 13:39:59 +01:00
Nicolas Delaby
031ac2a292
Allow DjangoObjectPermissions to use views that define get_queryset
2015-05-13 14:26:44 +02:00
Xavier Ordoquy
fb4ba3ad3c
Bump version to 3.1.2
2015-05-13 09:44:15 +02:00
Tom Christie
9424e59b9e
Styling of nested lists/objects in detail view
2015-05-12 16:28:49 +01:00
Tom Christie
a1421cd4a3
Basic formatting for dict and list values
2015-05-12 16:18:45 +01:00
Tom Christie
9a504efd26
Basic formatting for admin cells
2015-05-12 15:21:49 +01:00
Tom Christie
995aa47570
First pass templates for admin style
2015-05-12 14:49:09 +01:00
Marco Vellinga
478b1dbd06
Use get_queryset() for RelatedField choices property instead of self.queryset.all()
2015-05-11 15:28:10 +02:00
Omer Katz
1ee3173583
Cache fields list for to_internal_value and to_representation.
2015-05-09 14:37:49 +03:00
Tom Christie
abcd6f2b9e
Merge pull request #2869 from ryangallen/datefield
...
DateField to_representation can handle str and empty values. Fixes #2656 , #2687 .
2015-05-01 16:33:43 +01:00
Tom Christie
2eb9107b87
Merge pull request #2798 from Boomerangz/depth-should-reduce
...
Depth should reduce on nested ModelSerializer classes.
2015-04-27 16:22:22 +01:00
Tom Christie
2394577dc2
Merge pull request #2757 from ekiourk/2630/Raise-exception-when-ModelSerializer-used-with-abstract-model
...
Raise error when ModelSerializer used with abstract model
2015-04-27 14:47:32 +01:00
José Padilla
9809f4d36a
Merge pull request #2809 from aparsons/master
...
Move ul.breadcrumb margin to bootstrap-tweaks.css
2015-04-26 11:15:50 -04:00
Tom Christie
450c541462
Merge pull request #2868 from ticosax/versioning-header-all
...
Check AcceptHeaderVersioning with content negotiation in place
2015-04-24 15:19:51 +01:00
Allard Hoeve
9a794beb1e
Remove mention of Django's built-in ValidationError in docstring
...
The `exception_handler` does not actually handle django.core.exceptions.ValidationError, so remove any mention of it.
This closes #2872
2015-04-24 15:37:42 +02:00
Ryan Allen
cbea03c85b
DateField to_representation can handle str and empty values. Fixes #2656 , #2687 .
2015-04-23 19:31:46 -05:00
Nicolas Delaby
63511c03d0
Check AcceptHeaderVersioning with content negotiation in place
2015-04-23 14:19:39 +02:00
Nicolas Delaby
24e9473036
Improve error message.
2015-04-22 11:22:37 +02:00
Nicolas Delaby
6f66798ad3
Prevent empty queryset
s to raises AssertionError.
2015-04-22 11:13:09 +02:00
Nicolas Delaby
c2e536bfda
Tell DjangoModelPermissions to rely on get_queryset first.
2015-04-22 10:18:30 +02:00
Tom Christie
0ca1145456
Merge pull request #2853 from ryangallen/master
...
Set IntegerField class variable for compiled decimal regex, comment for ...
2015-04-21 16:00:37 +01:00
Ryan Allen
32acc4a72b
Set IntegerField class variable for compiled decimal regex, comment for purpose
2015-04-21 10:52:52 -04:00
Tom Christie
605369e2b4
Merge pull request #2807 from iorlas/patch-2
...
Now it is possible to display viewset w/o paginator
2015-04-21 15:07:11 +01:00
Ryan Allen
1f10a39d31
Match IntegerField validation with Django's, preventing decimal values being stored as ints, fixes #2835 .
...
Match IntegerField validation with Django IntegerField, prevents decimal values being stored as ints, fixes #2835
On branch master
2015-04-20 11:03:05 -04:00
Adam Parsons
72230a913e
Removed color from default
2015-04-18 16:52:20 -05:00
Adam Parsons
324ccc3664
Moved breadcrumb color to bootstrap-tweaks
...
Moved to color associated with the breadcrumb to the tweaks style sheet.
2015-04-18 16:50:32 -05:00
Tymur Maryokhin
1ddfef1212
Removed deprecated '.model' attribute check
2015-04-12 17:12:01 +02:00
Thomas Stephenson
236b731072
Add 'format' argument to UUIDField
...
To allow serializations to control the representation format of a
UUID value
2015-04-12 22:07:25 +10:00
Adam Parsons
77460d4bca
Moved ul.breadcrumb margin to bootstrap-tweaks.css
...
When importing other bootstrap themes from sites like bootswatch, the
margin in default.css persists and adds a 70px margin below the header.
This change will remove that margin when users choose to use a different
bootstrap theme.
2015-04-08 20:10:33 -05:00
iorlas
548ac9a65e
Now it is possible to display viewset w/o paginator
...
Since pagination is now included in every generic viewset, we should have ability to disable it and we have it: paginator=None or pagination_class=None. But this piece of code relies on existence of property instead of its value.
2015-04-08 20:32:02 +03:00
Igor Zygin
2d5b4f4cc9
Depth should reduce
...
Depth should reduce
2015-04-06 10:13:25 +06:00
José Padilla
2e6d39dbae
Merge pull request #2754 from bleib1dj/enhancement_dont_require_pk_strictly_related
...
Enhancement dont require pk strictly related #2745
2015-04-04 22:01:06 -04:00
Andrea Grandi
d6effbf779
Remove unpack_ipv4 parameter
2015-04-02 19:40:17 +01:00
Michael Blatherwick
56ec7b152e
Fixed docstring typo
2015-03-27 18:00:19 +00:00
Andrea Grandi
466575bee6
Lowercase the input
2015-03-26 18:14:53 +00:00
Udi Oron
b95ef25cbb
Wrong error message on bad field lookup
2015-03-26 20:13:35 +02:00
José Padilla
55ee588f6e
Use default reason phrases from HTTP standard.
...
Closes #2763
2015-03-25 13:27:47 -04:00
Ilias Kiourktsidis
0888f9cfc3
Use _meta instead of Meta on is_abstract_model function
2015-03-25 12:00:20 +00:00
Simon Charette
87208021e2
Metadata should detect null boolean field type.
2015-03-24 21:31:35 -04:00
Devon Bleibtrey
b1c1867b16
Swapping to hassattr logic for pk attribute references in relations
2015-03-23 11:40:33 -04:00
Ilias Kiourktsidis
486f0a9367
Raise error when ModelSerializer used with abstract model
2015-03-23 15:01:19 +00:00
Devon Bleibtrey
7ac3c3fff7
Added enhancement for pk reference in many=True relations
2015-03-23 10:42:42 -04:00
Tom Christie
a90dbe3bd9
Merge pull request #2724 from delinhabit/namespaced-versioning-non-api-reversal
...
Handle reversal of non-API view_name in HyperLinkedRelatedField
2015-03-23 11:35:21 +00:00
Tom Christie
f7cd7a1c1f
Latest translation strings
2015-03-23 11:32:28 +00:00
Tom Christie
e73ddddc3a
Merge pull request #2726 from linovia/release/3.1.1
...
Release notes for 3.1.1 and version bump.
2015-03-23 11:20:23 +00:00
Tom Christie
7872d0acbf
Escape tab switching cookie
2015-03-23 11:20:09 +00:00
Tom Christie
166801063d
Merge pull request #2743 from maurodoglio/serializer_class-html-renderer
...
Use `serializer_class` for browsable API display, even on plain APIView.
2015-03-23 09:43:39 +00:00
Devon Bleibtrey
8a58b1a380
Added ability to define backend identification attribute
2015-03-22 13:50:05 -04:00
mdoglio
77c44d8c63
Make BrowsableAPIRenderer use serializer_class when present
2015-03-22 14:36:30 +00:00
mdoglio
d0126b7e31
Set serializer_class on ObtainAuthToken view
2015-03-22 12:35:56 +00:00
mdoglio
fde02ae6eb
AuthTokenSerializer - properly render password field
2015-03-22 12:13:28 +00:00
Ion Scerbatiuc
fac2785341
Handling the fallback in reverse
2015-03-19 16:12:28 -07:00
Xavier Ordoquy
164be174ea
Release notes for 3.1.1 and version bump.
2015-03-19 23:29:10 +01:00
Ion Scerbatiuc
90280a3437
Handle reversal of non-API view_name in HyperLinkedRelatedField
2015-03-19 14:16:45 -07:00
Di Wu
48e1f151c5
use SAFE_METHODS and make tuple
2015-03-16 22:13:07 -07:00
Tom Christie
2148f32007
Merge pull request #2700 from tomchristie/do-not-paginate-if-page-size-none
...
Do not paginate if PAGE_SIZE=None
2015-03-16 12:15:50 +00:00
Tom Christie
992971d648
Merge pull request #2631 from Ins1ne/feature/issue-2559
...
Allow blank/null on radio.html choices
2015-03-16 12:11:33 +00:00
Tom Christie
5cd0714dca
Do not paginate if PAGE_SIZE=None
2015-03-16 12:05:31 +00:00
Tom Christie
4cd49d5de3
Merge branch 'master' of https://github.com/tomchristie/django-rest-framework
2015-03-16 11:57:42 +00:00
Tom Christie
c573e7b4a8
Latest translation strings
2015-03-16 11:57:28 +00:00