From: Mike Bayer Date: Sat, 7 Aug 2010 00:22:15 +0000 (-0400) Subject: dev X-Git-Tag: rel_0_7b1~252^2~11 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=fabdc76047b1215d6ebc9dc239113dafffe5bc04;p=thirdparty%2Fsqlalchemy%2Fsqlalchemy.git dev --- diff --git a/lib/sqlalchemy/ext/hybrid.py b/lib/sqlalchemy/ext/hybrid.py index b74b407c5c..609f5aa8e5 100644 --- a/lib/sqlalchemy/ext/hybrid.py +++ b/lib/sqlalchemy/ext/hybrid.py @@ -112,7 +112,7 @@ class property_(object): self.expr = expr return self - def compare_with(self, comparator): + def comparator(self, comparator): proxy_attr = attributes.\ create_proxied_attribute(self) def expr(owner): @@ -122,23 +122,18 @@ class property_(object): class Comparator(interfaces.PropComparator): - def __init__(self, expression, adapter=None): - self._expression = expression - self.adapter = adapter + def __init__(self, expression): + self.expression = expression - @property - def expression(self): - return self.__clause_element__() - def __clause_element__(self): - if self.adapter: - return self.adapter(self._expression) - else: - return self._expression + expr = self.expression + while hasattr(expr, '__clause_element__'): + expr = expr.__clause_element__() + return expr - def adapted(self, adapter): - return self.__class__(self._expression, adapter) + # interesting.... + return self diff --git a/lib/sqlalchemy/orm/query.py b/lib/sqlalchemy/orm/query.py index ed1eefee49..bc3c051265 100644 --- a/lib/sqlalchemy/orm/query.py +++ b/lib/sqlalchemy/orm/query.py @@ -866,8 +866,6 @@ class Query(object): clauses = [_entity_descriptor(self._joinpoint_zero(), key) == value for key, value in kwargs.iteritems()] - import pdb - pdb.set_trace() return self.filter(sql.and_(*clauses)) @_generative(_no_statement_condition, _no_limit_offset)