Skip to Content
เมนู
คุณต้องลงทะเบียนเพื่อโต้ตอบกับคอมมูนิตี้
คำถามนี้ถูกตั้งค่าสถานะ
2 ตอบกลับ
16115 มุมมอง

Hi !

I've created a simple module on Odoo v8, with two objects:

        class repas(osv.osv):
            _name = 'repas'
            _description = 'Repas de chocapic'
            _columns = {
                'name': fields.char('Nom'),
                'quantity' : fields.integer(u'Quantité'),
                'bol_id': fields.many2one('bol',u'Bol utilisé'),
            }
            _defaults = {
                'quantity': 0, 
            }

        class bol(osv.osv):
            _name = 'bol'
            _columns = {
                'name': fields.char('Nom de mon bol'),
                'repas_ids': fields.one2many('repas','bol_id','Repas'),
            }

With this view:

        <record id="bol_form_view" model="ir.ui.view">
            <field name="name">bol.form</field>
            <field name="model">bol</field>
            <field name="arch" type="xml">
                <form string="Bol">
                    <sheet>
                        <group>
                            <field name="name"/>
                        </group>
                        <group>
                            <field name="repas_ids"/>
                        </group>
                    </sheet>
                </form>
            </field>
        </record>


When I create a "bol", I can't select an existing "repas" and I must create one, but I've a one2many relation on this !

Anyone have this problem too ? Or a solution ?

Thank you

อวตาร
ละทิ้ง
คำตอบที่ดีที่สุด

Same problem 5 years later in Odoo v11...

Ivan solution did not work, I had to replace "many2many_list" by "many2many" :

<field name="your_one2many_field" widget="many2many"/>

It opens a search for existing entity form, instead of opening the default create form.

อวตาร
ละทิ้ง

worked for me on odoo 13

Worked for us on odoo 13, with similar need.

คำตอบที่ดีที่สุด

Florent, one2many relation field is meant for you to create a new record instead of attaching something that has been created beforehand.  If you require to attach some pre-created record to a one2many field, try to use widget="many2many_list" in the <field name="repas_ids"/> in your view.

อวตาร
ละทิ้ง

didn't work with odoo 13

Related Posts ตอบกลับ มุมมอง กิจกรรม
3
ก.ค. 25
21985
0
ก.ย. 23
144
1
เม.ย. 17
6027
1
ก.ค. 25
1842
1
พ.ค. 24
10752