From 66d8750bfb005a8caee119d2d9ee5411f5fe92c3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=A9dric=20Krier?= Date: Sat, 6 Apr 2013 12:29:12 +0200 Subject: [PATCH] Fix search on tree rec_name issue2868 review757002 --- work.py | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/work.py b/work.py index 4436fe6bc1..b90d971ff5 100644 --- a/work.py +++ b/work.py @@ -151,6 +151,21 @@ class Work(ModelSQL, ModelView): else: return self.name + @classmethod + def search_rec_name(cls, name, clause): + if isinstance(clause[2], basestring): + values = clause[2].split('\\') + values.reverse() + domain = [] + field = 'name' + for name in values: + domain.append((field, clause[1], name.strip())) + field = 'parent.' + field + else: + domain = [('name',) + tuple(clause[1:])] + ids = [w.id for w in cls.search(domain, order=[])] + return [('parent', 'child_of', ids)] + @classmethod def copy(cls, works, default=None): if default is None: