我有这堂课:
class caracteristica_fisica(osv.osv):
_name = 'caracteristica.fisica'
_columns = {
'name': fields.char('Nombre',required=True),
}
在产品类别中,我有一个很多2字段参考 caracteristica.fisica 模型:
class caracteristica_fisica(osv.osv):
_inherit = 'product.category'
_name = 'product.category'
_columns = {
'cf1':fields.many2one('caracteristica.fisica', 'Característica física 1')
}
一旦我选择了这个很多的 cf1 字段,我需要这个值来在 comun.denominador 表中生成一条记录:
class comun_denominador(osv.osv):
_name='comun.denominador'
_columns = {
'categ_id' : fields.many2one('product.category','Categoría de Producto', select=True, ondelete='cascade'),
'cf1_cm': fields.related('categ_id', 'cf1', string="Característica física 1", type='char', store=True, select=True),
}
它以 comun.denominador 生成记录,但格式如下:
caracteristica.fisica(4,)
我需要它来显示真实姓名
我该如何解决?
答案 0 :(得分:0)
请尝试以下操作:
class comun_denominador(osv.osv):
_name='comun.denominador'
_columns = {
'categ_id' : fields.many2one('product.category','Categoría de Producto', select=True, ondelete='cascade'),
'cf1_cm': fields.related('categ_id', 'cf1', string="Característica física 1", type='many2one', relation="caracteristica.fisica", store=True, select=True),
}
您尝试访问的相关字段不是“char”类型,而是“many2one”字段。
注意:强>
还有一件事,如果您的目的是为了信息目的而拥有相关字段,请不要将其设为“store = True”并将其设为只读。