From: Mike Bayer Date: Sat, 4 Mar 2006 20:20:23 +0000 (+0000) Subject: added public-friendly setattr_clean and append_clean X-Git-Tag: rel_0_1_4~44 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=ffc8dfbdec0903db84370c3466ccce5cb8316b7e;p=thirdparty%2Fsqlalchemy%2Fsqlalchemy.git added public-friendly setattr_clean and append_clean --- diff --git a/lib/sqlalchemy/attributes.py b/lib/sqlalchemy/attributes.py index 08178324fe..cc926b19c8 100644 --- a/lib/sqlalchemy/attributes.py +++ b/lib/sqlalchemy/attributes.py @@ -50,7 +50,15 @@ class SmartProperty(object): return self.manager.get_list_attribute(obj, self.key) else: return self.manager.get_attribute(obj, self.key) - + def setattr_clean(self, obj, value): + """sets an attribute on an object without triggering a history event""" + h = self.manager.get_history(obj, self.key) + h.setattr_clean(value) + def append_clean(self, obj, value): + """appends a value to a list-based attribute without triggering a history event.""" + h = self.manager.get_history(obj, self.key) + h.append_nohistory(value) + class PropHistory(object): """Used by AttributeManager to track the history of a scalar attribute on an object instance. This is the "scalar history container" object.