diff --git a/CHANGELOG b/CHANGELOG index c2924c4b06..c710801080 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,3 +1,4 @@ +* Combine search and get_keys in DictSchemaMixin * Make language code unique * Support base64 encoded data in ModelStorage.import_data * Add BOOL_AND and BOOL_OR to SQLite backend diff --git a/trytond/model/dictschema.py b/trytond/model/dictschema.py index a0ca8bb332..a4ca792f84 100644 --- a/trytond/model/dictschema.py +++ b/trytond/model/dictschema.py @@ -91,6 +91,7 @@ class DictSchemaMixin(object): super(DictSchemaMixin, cls).__setup__() cls.__rpc__.update({ 'get_keys': RPC(instantiate=0), + 'search_get_keys': RPC(), }) @staticmethod @@ -178,6 +179,11 @@ class DictSchemaMixin(object): keys.append(new_key) return keys + @classmethod + def search_get_keys(cls, domain, limit=None): + schemas = cls.search(domain, limit=limit) + return cls.get_keys(schemas) + @classmethod def get_relation_fields(cls): if not config.get('dict', cls.__name__, default=True):