Skip ke Konten
Menu
Pertanyaan ini telah diberikan tanda
6 Replies
11401 Tampilan

I'm learning about developing modules. I saw two ways of adding fields in view.

One is like this:
https://www.odoo.com/documentation/12.0/howtos/backend.html#inheritance

<field name="arch" type="xml"> 
     <xpath expr="//field[@name='description']" position="after">
        <field name="idea_ids" string="Number of ideas"/>
    </xpath>
</field>


And the second one is:
https://www.cybrosys.com/blog/adding-custom-fields-to-existing-views-in-odoo-v12

<field name="arch" type="xml">
    <field name="confirmation_date" position="after">
        <field name="additional_note"/>
    </field>
</field>

What is the difference? What should I use?

Avatar
Buang

Read more about inheritance in odoo: https://goo.gl/fGNfBY

Jawaban Terbai

Hello,

you can both uses xpath and also field

but when complicated condition then uses xpath and normal condition then use normal field.

Avatar
Buang
Jawaban Terbai

Hi!

If the modification you try to make can be done by using the field-based selection (your second example), I would always go with this solution for the sake of readability. This applies to all the cases when you try to do something directly after/before/inside some field or to that field itself.

The <xpath expr="..."> allows you to utilize the full potential of XPath to select any node inside a view. If you cannot select the specific position you are looking for via a named field, do it via XPath. :)

Avatar
Buang
Jawaban Terbai

Xpath expressions gives the ability to add new pages, groups, fields to an already existing view.

Normal field gives the ability to add fields inside a already existing or new view.

Avatar
Buang
Jawaban Terbai

Xpath is probably used for traverse purpose.It is mainly focused for existing one.fields are used to view purpose. 

Avatar
Buang
Jawaban Terbai

Thanks for responses

Avatar
Buang
Jawaban Terbai

Hi,

We can use both. 

Xpath gives you the option to add below details to an already existing view.

new pages, 

groups, 

fields and more

When you inherit an existing view in a module and required to extend it, you will need XPath expressions. 

In complicated situations, you can use Xpath or otherwise the one that you mentioned in the blog.


Avatar
Buang
Post Terkait Replies Tampilan Aktivitas
0
Agu 19
3167
3
Agu 19
3825
2
Jun 20
5748
0
Apr 19
4009
2
Jan 19
6460