Benjamin Schäfer
1129a8dacd
Detect underlying field for OneToOne primary key
2022-02-24 15:14:46 +01:00
Luke Plant
bce9df9b5e
Make ReturnDict support dict union operators on Python 3.9 and later ( #8302 )
...
Fixes issue #8301
2021-12-22 15:08:58 +00:00
Anton Agestam
76232437d4
Allow type checkers to make serializers generic ( #7385 )
2020-07-07 10:05:36 +01:00
Ryan P Kilby
b8c369c4cf
Fix serializer multiple inheritance bug ( #6980 )
...
* Expand declared filtering tests
- Test declared filter ordering
- Test multiple inheritance
* Fix serializer multiple inheritance bug
* Improve field order test to check for field types
2019-12-12 14:03:55 +00:00
Chris Guo
5ee970c090
Fix docs typos ( #7015 )
2019-10-24 11:31:12 -07:00
Ryan P Kilby
1b8141a4aa
Fix nullable source='*'
fields ( #6659 )
2019-05-20 14:58:02 -07:00
Jon Dufresne
734ca7ca8c
Remove unneeded repo() test ( #6632 )
2019-05-01 07:46:30 +02:00
Jon Dufresne
ff86f09f74
Remove unnecessary compatibility shims from rest_framework/compat.py ( #6631 )
...
For Python 3, collections.abc.Mapping and collections.abc.MutableMapping
are always available from the stdlib.
2019-05-01 07:44:33 +02:00
Carlton Gibson
0407a0df8a
Dropped Python 2 compatibility. ( #6615 )
...
Thanks to Jon Dufresne (@jdufresne) for review.
Co-authored-by: Asif Saif Uddin <auvipy@gmail.com>
Co-authored-by: Rizwan Mansuri <Rizwan@webbyfox.com>
2019-04-30 17:53:44 +02:00
Xtreak
739b0a272a
Fix DeprecationWarning in tests when accessing collections.abc classes via collections ( #6473 )
2019-02-25 15:22:45 +01:00
Si Feng
1ece516d2d
Adjusted field validators
to accept iterables. ( #6282 )
...
Closes 6280.
2019-02-19 16:38:20 +01:00
Carlton Gibson
587058e3c2
Allow run_validators() to handle non-dict types. ( #6365 )
...
Fixes #6053 .
Original test case thanks to Vincent Delaitre in #6242 .
2019-01-08 11:39:30 +00:00
Carlton Gibson
6c0c69ed65
Correct allow_null behaviour when required=False ( #5888 )
...
* Revert "Non-required fields with 'allow_null=True' should not imply a default value (#5639 )"
This reverts commit 905a5579df
.
Closes #5708
* Add test for allow_null + required=False
Ref #5708 : allow_null should imply default=None, even for non-required fields.
* Re-order allow_null and default in field docs
default is prior to allow_null. allow_null implies an outgoing default=None.
* Adjust allow_null note.
2018-03-20 21:24:39 +01:00
Carlton Gibson
c2b24f83a3
Alter read_only+default behaviour ( #5886 )
...
* Always exclude read_only fields from _writable_fields
* Remove `read_only` from `CreateOnlyDefault` example.
In this context (without mentioning `save`) now slightly misleading.
2018-03-20 21:09:31 +01:00
Carlton Gibson
247cf096d4
Test using model objects for dotted source default ( #5880 )
...
… when path components may be null.
Ref #5375 , #5727
2018-03-16 14:51:37 +01:00
Ryan P Kilby
daba5e9ba5
Fix Serializer.data when provided invalid 'data' ( #5646 )
...
* Test serializer/API renderer for invalid datatype
* Fix Serializer.data with invalid input datatype
2017-12-04 08:39:55 +01:00
Rômulo Oliveira
905a5579df
Non-required fields with 'allow_null=True' should not imply a default value ( #5639 )
...
Ref #5518 .
2017-12-01 09:54:25 +01:00
Ryan P Kilby
2531998427
Rename test to reference correct issue ( #5610 )
2017-11-20 08:58:29 +01:00
Ryan P Kilby
5009aeff18
Fields with 'allow_null=True' should imply a default serialization value ( #5518 )
...
* Add test for dotted source + allow_null
* Field 'allow_null' implies 'default=None'
* Field 'allow_null' provides serialization default
2017-10-30 10:17:53 +01:00
Ryan P Kilby
6221124e0d
Docs about default value for dotted source, additional tests ( #5489 )
...
* Add docs note on dotted source + default value
* Add additional dotted source tests
2017-10-16 11:33:46 +02:00
Ryan P Kilby
bc49746dd3
Fix test name
2017-08-31 08:26:14 -04:00
Ryan P Kilby
94e5d05caa
Add failing test for #5371
2017-08-30 14:06:43 -04:00
Ryan P Kilby
26ebb88306
Revert 3288 ( #5313 )
...
* Add regression test for #2505 . Thanks @pySilver!
* Add regression test for #5087
* Revert "Cached the field's root and context property."
This reverts commit 792005806b
.
2017-08-07 16:52:09 +01: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
Isaac Stone
289e1e440e
Check for collection.Mapping instead of dict
...
issue #4901
2017-02-19 13:10:03 -08:00
Artem Muterko
220be31791
Git add remaining tests for BaseSerializer ( #4857 )
2017-01-27 15:44:00 +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
Ryan P Kilby
d92b24a0b7
Make serializer fields import explicit ( #4628 )
2016-11-01 10:27:11 +00:00
Tom Christie
f1bdce17b5
Fix for case of ListSerializer with single item ( #4609 )
2016-10-21 15:21:23 +01:00
Tom Christie
b419970431
Handle empty data with serializer ( #4564 )
2016-10-12 10:47:17 +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
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
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
paolopaolopaolo
134f5fa4bc
Fixes #3265 (now with Test Case)
...
- Added test_data_access_before_save_raises_error test
2015-09-22 11:40:19 -07:00
José Padilla
7351a3f6ca
Sort imports with isort
2015-06-25 16:55:51 -04:00
Tom Christie
e59b3d1718
Make ReturnDict cachable. Closes #2360 .
2015-01-21 14:18:13 +00:00
Tom Christie
b6ca7248eb
required=False allows omission of value for output. Closes #2342
2015-01-05 14:32:12 +00:00
Tom Christie
72e08a3e8b
Use unicode internally everywhere for 'repr'
2014-12-15 11:55:17 +00:00
Tom Christie
4fb757146a
Fix test for python2/3 compat
2014-12-13 15:04:39 +00:00
Tom Christie
aa571abb20
Better errors when serializer has incorrectly named field.
2014-12-13 14:58:04 +00:00
Tom Christie
c8764de788
Drop defunct tests
2014-11-28 13:04:42 +00:00
Tom Christie
c5d1be8eac
.validate() can raise field errors or non-field errors
2014-10-22 10:32:32 +01:00
Tom Christie
8b8623c5f8
Allow many, partial and context in BaseSerializer
2014-09-26 12:48:20 +01:00
Tom Christie
2859eaf524
request.data attribute
2014-09-26 10:46:52 +01:00
Tom Christie
417fe1b675
Partial support
2014-09-25 13:37:26 +01:00
Tom Christie
c1036c1753
More test passing
2014-09-03 16:34:09 +01:00
Tom Christie
ec096a1cac
Add relations and get tests running
2014-09-02 15:07:56 +01:00
Tom Christie
d2795dd26d
Resolve linting issues
2014-08-19 13:54:52 +01:00
Tom Christie
bf09c32de8
Code linting and added runtests.py
2014-08-19 13:28:07 +01:00
Tom Christie
e385a7b8eb
Merge master
2014-08-19 10:11:10 +01:00