[FIX] fields: fix the translations of the labels of inherited fields
authorRaphael Collet <rco@openerp.com>
Thu, 6 Nov 2014 15:00:58 +0000 (16:00 +0100)
committerRaphael Collet <rco@openerp.com>
Thu, 6 Nov 2014 15:42:41 +0000 (16:42 +0100)
openerp/addons/base/ir/ir_translation.py
openerp/fields.py

index a16933b..d52513c 100644 (file)
@@ -400,7 +400,7 @@ class ir_translation(osv.osv):
         main_lang = 'en_US'
         translatable_fields = []
         for k, f in trans_model._fields.items():
-            if f.translate:
+            if getattr(f, 'translate', False):
                 if f.inherited:
                     parent_id = trans_model.read(cr, uid, [id], [f.related[0]], context=context)[0][f.related[0]][0]
                     translatable_fields.append({'name': k, 'id': parent_id, 'model': f.base_field.model})
@@ -434,7 +434,7 @@ class ir_translation(osv.osv):
         if field:
             f = trans_model._fields[field]
             action['context'] = {
-                'search_default_name': "%s,%s" % (f.base_field.model, field)
+                'search_default_name': "%s,%s" % (f.base_field.model_name, field)
             }
         return action
 
index 417591c..58838bf 100644 (file)
@@ -623,7 +623,8 @@ class Field(object):
 
     def _description_string(self, env):
         if self.string and env.lang:
-            name = "%s,%s" % (self.model_name, self.name)
+            field = self.base_field
+            name = "%s,%s" % (field.model_name, field.name)
             trans = env['ir.translation']._get_source(name, 'field', env.lang)
             return trans or self.string
         return self.string