Odoo - xml 的action/search继承修改

发布时间 2023-08-21 16:20:41作者: CrossPython

直接对action动作视图进行修改

<?xml version="1.0" encoding="UTF-8"?>
<odoo>
    <record model="ir.actions.act_window" id="(模块名).(想要修改的action_id)">
        <field name="domain">[('asset_type', '=', 'leased_assets')]</field>
        <field name="context">{'search_default_gb_road_name': 1, 'search_default_gb_house_number_id': 1}</field>
    </record>
</odoo>

  

model=ir.actions.act_window id 代替为相对应模块下的要修改的action_id
下面直接对context进行重写即可 search_default 默认筛选分组 default _field名:值 给定默认值
------同理,domain筛选也可重写

直接对search视图进行替换修改

<record model="ir.ui.view" id="product_product.property_products_search_view">
        <field name="arch" type="xml">
            <search string="Properties">
                <field name="name" string="Properties"/>
                <filter string="Inactive" domain="[('active','=',0)]"/>
                <field name="product_price"/>
                <field name="product_area"/>
                <field name="state"/>
                <group expand='0' string='Group by...'>
                    <filter string="State" name="group_by_state" domain="[]" context="{'group_by': 'state'}"/>
                    <filter string="Road Name" name="group_by_road" domain="[]" context="{'group_by':'road_id'}"/>
                    <filter string="Effective Assets" name="group_by_bg_state" domain="[('state','!=','scrap')]"/>
                </group>
            </search>
        </field>
    </record>

  

id 代替为相对应模块下的要修改的search_view_id

针对search视图进行继承修改

<record id="inherit_view_purchase_order_filter" model="ir.ui.view">
        <field name="name">request.quotation.select</field>
        <field name="model">purchase.order</field>
        <field name="inherit_id" ref="purchase.view_purchase_order_filter"/>
        <field name="arch" type="xml">
            <xpath expr="//field[@name='create_uid']" position="after">
                <field name="company_id"/>
            </xpath>
            <xpath expr="//group/filter[last()]" position="inside">
                <filter string="Company" domain="[]" context="{'group_by':'company_id'}"/>
            </xpath>
        </field>
    </record>