Fixed returns_typeclass decorator to properly handle filtered query results. Resolves #791.

This commit is contained in:
Griatch 2015-08-24 19:39:25 +02:00
parent c28b06d639
commit 1316d8115a

View file

@ -41,7 +41,11 @@ def returns_typeclass(method):
def func(self, *args, **kwargs):
self.__doc__ = method.__doc__
query = method(self, *args, **kwargs)
return query
if hasattr(query, "__iter__"):
result = list(query)
return result[0] if result else None
else:
return query
return update_wrapper(func, method)
# Managers