diff --git a/pinry/core/api.py b/pinry/core/api.py index 334c019..9590f9b 100644 --- a/pinry/core/api.py +++ b/pinry/core/api.py @@ -1,3 +1,4 @@ +from django.core.exceptions import ObjectDoesNotExist from tastypie import fields from tastypie.authorization import DjangoAuthorization from tastypie.constants import ALL, ALL_WITH_RELATIONS @@ -59,7 +60,10 @@ class UserResource(ModelResource): def filter_generator_for(size): def wrapped_func(bundle, **kwargs): - return bundle.obj.get_by_size(size) + for thumbnail in bundle.obj._prefetched_objects_cache['thumbnail']: + if thumbnail.size == size: + return thumbnail + raise DoesNotExist() return wrapped_func @@ -136,7 +140,7 @@ class PinResource(ModelResource): 'submitter': ALL_WITH_RELATIONS } queryset = Pin.objects.all().select_related('submitter'). \ - prefetch_related('image', 'tags') + prefetch_related('image__thumbnail_set', 'tags') resource_name = 'pin' include_resource_uri = False always_return_data = True