openerp-dev-web team mailing list archive
-
openerp-dev-web team
-
Mailing list archive
-
Message #06924
[Merge] lp:~openerp-dev/openobject-server/trunk-bug-740799-nch into lp:openobject-server
Naresh(OpenERP) has proposed merging lp:~openerp-dev/openobject-server/trunk-bug-740799-nch into lp:openobject-server.
Requested reviews:
OpenERP Core Team (openerp)
Related bugs:
Bug #740799 in OpenERP Server: "[filtering] does not support hierarchy"
https://bugs.launchpad.net/openobject-server/+bug/740799
For more details, see:
https://code.launchpad.net/~openerp-dev/openobject-server/trunk-bug-740799-nch/+merge/61392
--
https://code.launchpad.net/~openerp-dev/openobject-server/trunk-bug-740799-nch/+merge/61392
Your team OpenERP R&D Team is subscribed to branch lp:~openerp-dev/openobject-server/trunk-bug-740799-nch.
=== modified file 'openerp/osv/expression.py'
--- openerp/osv/expression.py 2011-02-07 12:57:23 +0000
+++ openerp/osv/expression.py 2011-05-18 12:44:29 +0000
@@ -229,9 +229,9 @@
#FIXME
if operator == 'child_of':
if isinstance(right, basestring):
- ids2 = [x[0] for x in field_obj.name_search(cr, uid, right, [], 'like', context=context, limit=None)]
+ ids2 = [x[0] for x in field_obj.name_search(cr, uid, right, [], 'ilike', context=context, limit=None)]
else:
- ids2 = list(right)
+ ids2 = [right]
def _rec_convert(ids):
if field_obj == table:
@@ -292,12 +292,12 @@
else:
def _get_expression(field_obj,cr, uid, left, right, operator, context=None):
if context is None:
- context = {}
+ context = {}
c = context.copy()
c['active_test'] = False
#Special treatment to ill-formed domains
operator = ( operator in ['<','>','<=','>='] ) and 'in' or operator
-
+
dict_op = {'not in':'!=','in':'=','=':'in','!=':'not in','<>':'not in'}
if isinstance(right,tuple):
right = list(right)
@@ -319,7 +319,7 @@
elif isinstance(right,(list,tuple)):
m2o_str = True
for ele in right:
- if not isinstance(ele, basestring):
+ if not isinstance(ele, basestring):
m2o_str = False
break
elif right == []:
@@ -335,7 +335,7 @@
new_op = '!='
#Is it ok to put 'left' and not 'id' ?
self.__exp[i] = (left,new_op,False)
-
+
if m2o_str:
self.__exp[i] = _get_expression(field_obj,cr, uid, left, right, operator, context=context)
else:
Follow ups