定义动作 window 时 view_type 和 view_mode 的区别?

Difference between view_type and view_mode when defining action window?

在定义 act_window 时使用这些属性值的确切含义是什么,例如;

 <record id="open_estimate_quantity_extra_request" model="ir.actions.act_window">
   <field name="name">Extra Requests</field>
   <field name="res_model">estimate.quantity.extra.request</field>
   <field name="view_type">form</field>
   <field name="view_mode">tree,form</field>
 </record>

在上面的代码中,view_type 的值为 formview_mode 的值为 tree,form 是什么意思?据我了解,view_mode 告诉 odoo 显示 estimate.quantity.extra.request 模型的树视图和表单视图。但是view_type有什么用呢?

view_mode如果定义列表的查看模式和顺序:

<field name="view_mode">tree,form,graph,...</field>

但是视图type_type有两种(树或形式)当你选择树时你可以制作一个特殊的层次树最好的例子

但是当您将 type_view 从树更改为表格时,所有子记录都看不到:

view_type它用于层次结构树视图,请参阅帐户模块以了解如何计算级别字段并且需要一个 one2many 字段子记录集

查看模型 _name = "account.financial.report"

[编辑]: 关键在于树和动作

<record id="view_account_report_tree_hierarchy" model="ir.ui.view">
    <field name="name">account.report.hierarchy</field>
    <field name="model">account.financial.report</field>
    <!-- this field one2many field and the compute field level -->
    <field name="field_parent">children_ids</field>
    <field name="arch" type="xml">
        <tree string="Account Reports Hierarchy">
            <field name="name"/>
            <field name="type"/>
            <field name="parent_id" invisible="1"/>
            <field name="account_report_id"/>
        </tree>
    </field>
</record>

好吧,基本上视图模式显示了从菜单加载特定模型后 tree/form 视图右上角的视图切换器中可用的视图的顺序和数量项目或任何其他方式。

如果你设置视图模式为tree,form那么首先显示树视图,然后在你点击其中一条记录后打开表单视图,顺序也和first tree一样然后在视图右上方的视图切换器中从左到右形成视图。

但是视图类型意味着记录将如何打开,意味着如果将其设置为表单,那么当您在树视图中单击其中一条记录时,它将在表单视图中打开,如果您创建新记录将打开一个空表单视图,

但如果视图类型设置为树,那么当您单击记录时,它不会在表单视图中打开,当您创建新记录时,它将在树视图中创建为新行