我尝试了两种方法在列表视图中显示many2many字段,但它们都没有工作:
1)b
- >它只显示记录的数量。(即(3条记录))
2)<field name="test_ids"/>
- &gt;它显示了记录的ID。 (即2,3,4)
如何实现这个目标?
答案 0 :(得分:6)
通常,
<field name="test_ids" widget="many2many_tags"/>
必须工作。
显示ID的m2m列的原因是您的共同模型在模型中不包含名称字段或 _rec_name 声明。
答案 1 :(得分:1)
试试这个。
<field name="test_ids" widget="many2many_tags"/>
答案 2 :(得分:1)
好像你没有相关型号的记录名。您有两种选择:
答案 3 :(得分:1)
要在列表视图中显示many2many字段,您必须使用many2many_tags
现在它显示了ID列表,因为Odoo不知道如何表示 关系领域的记录。
如何告诉Odoo他如何代表唱片有两种方式:
如果您的记录可以用字段值表示,那么 1- easy one正在使用rec_name
例如国家/地区,国家/地区的名称足以显示不同的记录
class YourClass..
_name = 'your_model_name'
_rec_name = 'field_name' # here put the name of the field
2-秒,当一个字段不能代表记录时使用name_get
class YourClass..
_name = 'your_model_name'
.....
.....
# implement this method in you model class
@api.multi
def name_get(self):
""" change representation of the record by concatinating two field"""
result = []
for record in self:
result.append((record.id, _("%s %s") % (
record.some_field, record.some_other_field)))
return result