mirror of
https://github.com/django/django.git
synced 2025-10-26 15:16:09 +00:00
[1.8.x] Refs #24937 -- Backported more commits to fix for serialization of Date(Time)RangeField.
Instead of using DjangoJSONEncoder, use base_field's value_to_string(). Note this means the serialization of e.g. IntegerRangeField now has strings for lower and upper, so use to_python when they came back in (same behaviour as ArrayField, hopefully, from where I also got the set_attributes_from_name function). Backport of86d9b10dc3and8a842148b6from master
This commit is contained in:
committed by
Tim Graham
parent
3ded51bcf2
commit
2c96b3da6f
@@ -193,18 +193,18 @@ class TestQuerying(TestCase):
|
||||
@skipUnlessPG92
|
||||
class TestSerialization(TestCase):
|
||||
test_data = (
|
||||
'[{"fields": {"ints": "{\\"upper\\": 10, \\"lower\\": 0, '
|
||||
'[{"fields": {"ints": "{\\"upper\\": \\"10\\", \\"lower\\": \\"0\\", '
|
||||
'\\"bounds\\": \\"[)\\"}", "floats": "{\\"empty\\": true}", '
|
||||
'"bigints": null, "timestamps": "{\\"upper\\": \\"2014-02-02T12:12:12\\", '
|
||||
'\\"lower\\": \\"2014-01-01T00:00:00\\", \\"bounds\\": \\"[)\\"}", '
|
||||
'"bigints": null, "timestamps": "{\\"upper\\": \\"2014-02-02T12:12:12+00:00\\", '
|
||||
'\\"lower\\": \\"2014-01-01T00:00:00+00:00\\", \\"bounds\\": \\"[)\\"}", '
|
||||
'"dates": "{\\"upper\\": \\"2014-02-02\\", \\"lower\\": \\"2014-01-01\\", \\"bounds\\": \\"[)\\"}" }, '
|
||||
'"model": "postgres_tests.rangesmodel", "pk": null}]'
|
||||
)
|
||||
|
||||
lower_date = datetime.date(2014, 1, 1)
|
||||
upper_date = datetime.date(2014, 2, 2)
|
||||
lower_dt = datetime.datetime(2014, 1, 1, 0, 0, 0)
|
||||
upper_dt = datetime.datetime(2014, 2, 2, 12, 12, 12)
|
||||
lower_dt = datetime.datetime(2014, 1, 1, 0, 0, 0, tzinfo=timezone.utc)
|
||||
upper_dt = datetime.datetime(2014, 2, 2, 12, 12, 12, tzinfo=timezone.utc)
|
||||
|
||||
def test_dumping(self):
|
||||
instance = RangesModel(ints=NumericRange(0, 10), floats=NumericRange(empty=True),
|
||||
|
||||
Reference in New Issue
Block a user