From 4ab5e2aa22aa5808c4d0a21ef1bf2d60332157ea Mon Sep 17 00:00:00 2001 From: Griatch Date: Fri, 25 Apr 2014 09:01:49 +0200 Subject: [PATCH] Fixed Attributehandler.get() default return value. --- src/typeclasses/models.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/typeclasses/models.py b/src/typeclasses/models.py index cdf805256d..76abe19b03 100644 --- a/src/typeclasses/models.py +++ b/src/typeclasses/models.py @@ -251,6 +251,13 @@ class AttributeHandler(object): checked before displaying each looked-after Attribute. If no accessing_obj is given, no check will be done. """ + + class RetDefault(object): + "Holds default values" + def __init__(self): + self.value = default + self.strvalue = str(default) + if self._cache is None or not _TYPECLASS_AGGRESSIVE_CACHE: self._recache() ret = [] @@ -270,7 +277,7 @@ class AttributeHandler(object): if raise_exception: raise AttributeError else: - ret.append(default) + ret.append(RetDefault()) if accessing_obj: # check 'attrread' locks ret = [attr for attr in ret if attr.access(accessing_obj, self._attrread, default=default_access)]