Odoo-源碼功能-M2m字段添加一行彈出視圖內容個性化指定

m2m字段的context屬性接收一個 tree_view_ref 屬性,通過它指定特定的打開視圖即可。
舉個例子:

1. 首先自定義一個打開字段模型的tree視圖:

		<!--Tree M2M Select View-->
        <record model="ir.ui.view" id="{tree_id}">
            <field name="name">Tree M2M Select View</field>
            <field name="model">{model_name}</field>
            <field name="priority"  eval="20"/>
            <field name="arch" type="xml">
                <tree>
                    <field name="name"/>
                    <field name="active_flag"/>
                </tree>
            </field>
        </record>

注意:
  最好指定一個priority屬性值>16,否則可能會將你原來model的tree視圖也跳轉到新寫的tree上了(odoo8中會出現這個情況 默認值16 加載默認取最新的視圖);或者,你可以在action上指定一個view_ids,保證原生的視圖一定連接到對應的類型視圖:

<field name="view_ids"
               eval="[(5, 0, 0),
                      (0, 0, {'view_mode': 'tree', 'view_id': ref('{module_name}.{tree_view_id}')}),
                      (0, 0, {'view_mode': 'form', 'view_id': ref('{module_name}.{form_view_id}')})]"/>

2. 在對應的m2m字段上指定視圖

<field name="element_ids" context="{'tree_view_ref': '{module_name}.{tree_id}'}">

簡單的總結,就到這裏吧,大家如果有更好的方式請分享給我~

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章