﻿id	summary	reporter	owner	description	type	status	component	version	severity	resolution	keywords	cc	stage	has_patch	needs_docs	needs_tests	needs_better_patch	easy	ui_ux
24937	DateTimeRangeField.value_to_string raises TypeError	Villiers Strauss	Matthew Somerville	"`DateTimeRangeField`'s `value_to_string` method raises `TypeError` because `json.dumps` is unable to serialize `datetime.datetime` objects.

'''Steps to replicate:'''

Step 1:

{{{
# myapp/models.py
from django.contrib.postgres.fields import DateTimeRangeField
from django.db.models import Model

class DateTimeRangeTest(Model):
    date_time_range = DateTimeRangeField()
}}}

Step 2: migrate etc.

Step 3:

{{{
from django.contrib.postgres.fields import DateTimeRangeField
from myapp.models import DateTimeRangeTest

t = DateTimeRangeTest.objects.create(date_time_range=('2015-06-05 16:00:00+0200','2015-06-05 17:00:00+0200'))

dtrf = DateTimeRangeField()
dtrf.attname = 'date_time_range'
dtrf.value_to_string(t)  
# raises: TypeError: datetime.datetime(2015, 6, 5, 14, 00, 00, tzinfo=<UTC>) is not JSON serializable
}}}

-----

The `value_to_string` method is used with the `manage.py dumpdata` command, so this bug effectively breaks `dumpdata` for models with `DateTimeRangeField`s.

"	Bug	closed	contrib.postgres	1.8	Normal	fixed			Accepted	1	0	0	0	0	0
