Search code examples
pythonsearchviewdefaultodoo

Odoo 10: Changing the default search in tree view


I created a custom module which has a tree view.The top right search bar search my records using ID by default . I want to search my records using "icc" field. I added {"search_default_icc":1} but didnt work. Below is my code:

<record model="ir.actions.act_window" id="view_sim">
            <field name="name">Sim Details</field>
            <field name="res_model">simcard.simcard</field>
            <field name="view_type">form</field>
            <field name="view_mode">tree,form</field>
            <field name="context">{"search_default_icc":1}</field>
            <field name="domain">[]</field>
            <field name="help" type="html">
                <p class="oe_view_nocontent_create">Create new
                </p>
            </field>
    </record>

What should i write in the code ? Also is it possible to call a python function when search is triggered??


Solution

  • You need to write a search view, docs at: http://www.odoo.com/documentation/10.0/reference/views.html#search

    Example:

    <record id="simcard_piavita_search_view" model="ir.ui.view">
        <field name="name">simcard_piavita.simcard_piavita.search</field>
        <field name="model">simcard_piavita.simcard_piavita</field>
        <field name="arch" type="xml">
            <search string="Search">
                <!-- add all the needed field to use for search-->
                <field name="icc"/>
            </search>
        </field>
    </record>