From ae7cb992bca5d211c9456487feb21b84387006eb Mon Sep 17 00:00:00 2001 From: Collin Anderson Date: Mon, 27 Oct 2014 21:36:47 -0400 Subject: Fixed #23721 -- check_related_objects without calling __iter__ Refs #14334 --- django/db/models/sql/query.py | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) (limited to 'django/db/models/sql') diff --git a/django/db/models/sql/query.py b/django/db/models/sql/query.py index b6690e4526..4560989e60 100644 --- a/django/db/models/sql/query.py +++ b/django/db/models/sql/query.py @@ -1102,12 +1102,11 @@ class Query(object): 'Cannot use QuerySet for "%s": Use a QuerySet for "%s".' % (value.model._meta.model_name, opts.object_name) ) + elif hasattr(value, '_meta'): + self.check_query_object_type(value, opts) elif hasattr(value, '__iter__'): for v in value: self.check_query_object_type(v, opts) - else: - # expecting single model instance here - self.check_query_object_type(value, opts) def build_lookup(self, lookups, lhs, rhs): lookups = lookups[:] -- cgit v1.3