]> git.ipfire.org Git - thirdparty/sqlalchemy/sqlalchemy.git/commitdiff
dev
authorMike Bayer <mike_mp@zzzcomputing.com>
Sat, 7 Aug 2010 00:22:15 +0000 (20:22 -0400)
committerMike Bayer <mike_mp@zzzcomputing.com>
Sat, 7 Aug 2010 00:22:15 +0000 (20:22 -0400)
lib/sqlalchemy/ext/hybrid.py
lib/sqlalchemy/orm/query.py

index b74b407c5c4865dab8310a247a50321629cb5cc7..609f5aa8e56b9c279e58aef012476854d1008b86 100644 (file)
@@ -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
         
         
         
index ed1eefee499242f6268e4e2594721dd85916cc52..bc3c05126526527d4759c4189f2df27c2d66c7ef 100644 (file)
@@ -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)