gpt4 book ai didi

python - 仅选择两个类别之间具有其值的第一个字段

转载 作者:行者123 更新时间:2023-11-30 22:56:18 25 4
gpt4 key购买 nike

当我在两个类之间创建多对多关系时,它向我显示了 openerp 中的所有类。如何只选择第一个具有其值的字段?

class f_produit_fabrique(osv.osv):
"""(NULL)"""
_name = 'f.produit.fabrique'
_columns = {
'code_prod': fields.char('Code_prod',size=30,required=True),
'lib_prod': fields.char('Lib_prod',size=30,required=True),
'coefficient':fields.integer('Coefficient',required=True),
'produit_achete':fields.many2many('a.produit.achete'),
}

f_produit_fabrique()

class a_produit_achete(osv.osv):
"""(NULL)"""
_name = 'a.produit.achete'
_columns = {
'code_prod': fields.char('Code_prod',size=30,required=True),
'lib_prod': fields.char('Lib_prod',size=30,required=True),
'prix_produitachete':fields.float('Prix_produitachete',size=30,required=True),
'quantite':fields.float('quantite',size=30,required=True),
'fournisseur_a_fournir': fields.many2one('fournisseur','fournisseur'),
}

a_produit_achete()

最佳答案

多对多

  • 对象之间的双向多重关系。
  • 这是最一般的关系类型:一条记录​​可能与另一方任意数量的记录相关,反之亦然。
  • 在多对多关系的情况下,产品中的每一行都链接到税收中的零行、一行或多行,反之亦然。通常,New Table需要一个映射表来映射这种关系。
  • 在此关系中,需要新表来存储两个表的引用。

enter image description here

当您从 odoo 类或 xml 中访问此字段时,它将返回关系表的可浏览对象列表。

因此,当您仅在 xml 文件中显示简单的 m2m 字段时,它将在 TreeView 中给出所有列的列表,如果您想仅显示特定字段,则需要在树中指定这些字段。

<field name="m2m_field_name" >
<tree>
<field name="relation_table_field1"/>
<field name="relation_table_field2"/>
<field name="relation_table_field3"/>
</tree>
</field>

如果您只想要一个字段,并且希望将其显示为多选组合框,那么您需要在那里应用小部件。

<field name="m2m_field_name" widget="many2many_tags" />

如果名称字段不存在,它将显示名称字段,然后它将把_rec_name字段的值带到那里。

关于python - 仅选择两个类别之间具有其值的第一个字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37067240/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com