From 34e475885b9217a5a38aed09a2e615779cc4a297 Mon Sep 17 00:00:00 2001 From: Matthew Tretter Date: Wed, 21 Sep 2011 09:52:38 -0400 Subject: [PATCH] Unbound fields are accessible from class. --- imagekit/fields.py | 9 ++++++--- imagekit/specs.py | 7 +++++-- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/imagekit/fields.py b/imagekit/fields.py index 9ec039d..2571742 100755 --- a/imagekit/fields.py +++ b/imagekit/fields.py @@ -17,8 +17,11 @@ class AdminThumbnailView(object): self.image_field = image_field self.template = template - def __get__(self, obj, type=None): - return BoundAdminThumbnailView(obj, self) + def __get__(self, instance, owner): + if instance is None: + return self + else: + return BoundAdminThumbnailView(instance, self) class BoundAdminThumbnailView(AdminThumbnailView): @@ -43,6 +46,6 @@ class BoundAdminThumbnailView(AdminThumbnailView): 'original_image': original_image, }) - def __get__(self, obj, type=None): + def __get__(self, instance, owner): """Override AdminThumbnailView's implementation.""" return self diff --git a/imagekit/specs.py b/imagekit/specs.py index 4f30a83..6cb4366 100644 --- a/imagekit/specs.py +++ b/imagekit/specs.py @@ -222,5 +222,8 @@ class _ImageSpecDescriptor(object): self._property_name = property_name self._spec = spec - def __get__(self, obj, type=None): - return BoundImageSpec(obj, self._spec, self._property_name) + def __get__(self, instance, owner): + if instance is None: + return self._spec + else: + return BoundImageSpec(instance, self._spec, self._property_name)