Search code examples
odooodoo-10odoo-9odoo-view

Odoo notebook position


Odoo 10

I want to move a notebook page but having errors when I do so. I want to move the membership notebook before the Contacts & Addresses

enter image description here

In the Membership addon I replaced <notebook position="inside"> to before but this did not work and crashed Odoo with error ParseError: "Invalid view definition

<record model="ir.ui.view" id="view_partner_form">
            <field name="name">res.partner.form.inherit</field>
            <field name="model">res.partner</field>
            <field name="inherit_id" ref="base.view_partner_form"/>
            <field name="arch" type="xml">
                <notebook position="inside">
                    <page string="Membership">
                        <group>
                            <group>
                                <field name="free_member"/>
                                <label for="membership_state"/>
                                <div>
                                    <field name="membership_state"/>
                                    <button name="%(action_membership_invoice_view)d" type="action" string="Buy Membership" 
                                        attrs="{'invisible':[('free_member','=',True)]}" class="oe_link"/>
                                </div>
                            </group>

Solution

  • Try with an xpath:

    <xpath expr="//form/sheet/notebook/page[1]" position="before">
       <page string="Membership">
           <group>
              <group>
                 <field name="free_member"/>
                 <label for="membership_state"/>
                  <div>
                      <field name="membership_state"/>
                      <button name="%(action_membership_invoice_view)d" type="action" string="Buy Membership" 
                        attrs="{'invisible':[('free_member','=',True)]}" class="oe_link"/>
                   </div>
               </group>
            </group>
       </page>