替换在odoo 12中也出现在其他地方的表单视图

时间:2019-06-21 08:55:31

标签: python odoo odoo-12

默认情况下,从 Contacts 创建联系人表单和从 Purchase 创建供应商表单似乎具有相同的 External ID ,即基本身份。 view_partner_form。我想替换表单视图以创建联系人。现在,我知道要替换视图,必须在自定义表单视图中执行此操作。

<field name="inherit_id" ref="external_id_of_form"/>

那么在这种情况下,如何替换表单视图,以便仅替换联系人创建表单?我可以根据操作替换表单视图吗? `

1 个答案:

答案 0 :(得分:3)

您不是通过继承来“替换”,而是更改/扩展其他视图。

实际上,您应该更改菜单操作,因为可以设置目标视图。

但是有不止一种方法。我会尝试列出其中一些,再加上您可以将它们合并。

完整单次观看

  • 一个或多个相同型号的ir.ui.view
  • 可以在动作和代码中引用
  • 其中只有一个可以成为该类型的默认视图,例如,在没有视图引用的情况下,odoo会使用该视图,请记住!

一种具有不同扩展视图的基本表单

  • 一个模型的基本视图
  • 该基本视图的多个主扩展视图
  • 您可以将这些主要扩展名用作操作中的参考
  • 或者您可以在这些扩展名中设置安全组,以仅向这些组的用户显示这些扩展名

具有扩展视图的一个视图

  • 这是通常的方法
  • 您拥有基本视图和许多扩展
  • 可见性是在拱中用groupsattrsinvisible等定义的。

IMO最适合您的方法是第一个。一个Odoo示例就是模型account.invoice的视图,因为有两种形式的视图:一种用于客户发票,一种用于供应商发票。