﻿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
30820	DateRange__contains does not work as filter.	henhuy		"Having a model containing `django.contrib.postgres.fields.DateRangeField` I cannot `filter` the range by date using ""contains"", BUT I can `get` one object using ""contains"".

Example (my original case, is different - but this should show the error as well):

{{{
import datetime as dt
from django import models
from django.contrib.postgres.fields import DateRangeField

class Period(models.Model):
    value = models.IntegerField()
    period = DateRangeField()

date = dt.date(2017, 1, 1)

# This works:
period = Period.objects.get(period__contains=date)

# This does not work:
period = Period.objects.filter(period__contains=date).first()
}}}

SQL-Query:
SELECT ""period"".""id"", ""period"".""value"", ""period"".""period"" FROM ""period"" WHERE ""period"".""period"" @> (2017-01-01)::date
SQL-Error (translated from german):
FEHLER: Cannot transform Typ integer into date

There should be ' around the date, then it would work:
SELECT ""period"".""id"", ""period"".""value"", ""period"".""period"" FROM ""period"" WHERE ""period"".""period"" @> ('2017-01-01')::date

Don't know why `get`works instead..."	Bug	closed	contrib.postgres	2.2	Normal	worksforme	postgres,		Unreviewed	0	0	0	0	0	0
