treat GFJ and FJ and M2M all the same for type in querystring

This commit is contained in:
AlanCoding
2017-02-20 17:11:08 -05:00
parent d8d874d964
commit a57d8fe9fd

View File

@@ -11,6 +11,7 @@ from django.db.models import Q
from django.db.models.fields import FieldDoesNotExist from django.db.models.fields import FieldDoesNotExist
from django.db.models.fields.related import ForeignObjectRel, ManyToManyField from django.db.models.fields.related import ForeignObjectRel, ManyToManyField
from django.contrib.contenttypes.models import ContentType from django.contrib.contenttypes.models import ContentType
from django.contrib.contenttypes.fields import GenericForeignKey
from django.utils.encoding import force_text from django.utils.encoding import force_text
# Django REST Framework # Django REST Framework
@@ -129,7 +130,7 @@ class FieldLookupBackend(BaseFilterBackend):
return to_python_boolean(value, allow_none=True) return to_python_boolean(value, allow_none=True)
elif isinstance(field, models.BooleanField): elif isinstance(field, models.BooleanField):
return to_python_boolean(value) return to_python_boolean(value)
elif isinstance(field, (ForeignObjectRel, ManyToManyField)): elif isinstance(field, (ForeignObjectRel, ManyToManyField, GenericForeignKey)):
return self.to_python_related(value) return self.to_python_related(value)
else: else:
return field.to_python(value) return field.to_python(value)