diff --git a/openerp/addons/base/ir/ir_qweb.py b/openerp/addons/base/ir/ir_qweb.py
index d2c9520cd6e..ea6224a1ad9 100644
--- a/openerp/addons/base/ir/ir_qweb.py
+++ b/openerp/addons/base/ir/ir_qweb.py
@@ -693,12 +693,11 @@ class ManyToOneConverter(osv.AbstractModel):
_name = 'ir.qweb.field.many2one'
_inherit = 'ir.qweb.field'
- def value_to_html(self, cr, uid, value, column, options=None, context=None):
- # value may be a browse_null
- if not value: return ''
- name_got = value._model.name_get(
- cr, openerp.SUPERUSER_ID, value.id, context=context)[0][1]
- return werkzeug.utils.escape(name_got).replace('\n', '
\n')
+ def record_to_html(self, cr, uid, field_name, record, column, options=None, context=None):
+ [read] = record.read([field_name])
+ _, value = read[field_name]
+
+ return werkzeug.utils.escape(value).replace('\n', '
\n')
class HTMLConverter(osv.AbstractModel):
_name = 'ir.qweb.field.html'
diff --git a/openerp/tests/addons/test_converter/tests/test_html.py b/openerp/tests/addons/test_converter/tests/test_html.py
index aaa0c12cdf5..b6f787d647a 100644
--- a/openerp/tests/addons/test_converter/tests/test_html.py
+++ b/openerp/tests/addons/test_converter/tests/test_html.py
@@ -209,15 +209,27 @@ class TestTextExport(TestBasicExport):
class TestMany2OneExport(TestBasicExport):
def test_many2one(self):
- converter = self.get_converter('many2one')
Sub = self.registry('test_converter.test_model.sub')
- id0 = Sub.create(self.cr, self.uid, {'name': "Foo"})
- value = converter(Sub.browse(self.cr, self.uid, id0))
+
+ id0 = self.Model.create(self.cr, self.uid, {
+ 'many2one': Sub.create(self.cr, self.uid, {'name': "Foo"})
+ })
+ id1 = self.Model.create(self.cr, self.uid, {
+ 'many2one': Sub.create(self.cr, self.uid, {'name': "Foo"})
+ })
+
+ def converter(record):
+ column = self.get_column('many2one')
+ model = self.registry('ir.qweb.field.many2one')
+
+ return model.record_to_html(
+ self.cr, self.uid, 'many2one', record, column)
+
+ value = converter(self.Model.browse(self.cr, self.uid, id0))
self.assertEqual(value, "Foo")
- id1 = Sub.create(self.cr, self.uid, {'name': "Foo"})
- value = converter(Sub.browse(self.cr, self.uid, id1))
+ value = converter(self.Model.browse(self.cr, self.uid, id1))
self.assertEqual(value, "Fo<b>o</b>")
class TestBinaryExport(TestBasicExport):