İçereği Atla
Menü
Bu soru işaretlendi
2 Cevaplar
1518 Görünümler


I have inherited web.listrenderer and added xpath to add pin icon to all the list views..but pin icon is showing in one2many fields also..how to hide??

Avatar
Vazgeç
En İyi Yanıt

Hi Shankar:

Since the One2many field is rendered by a template named 'web.X2ManyField', which includes ListRenderer and KanbanRenderer as its components. Check the file in: addons/web/static/src/views/fields/x2many/x2many_field.xml.


So, there are 2 ways you can seperate the list views between regular list and  o2m list:

1、overwrite the web.ListRenderer in "primary" mode, leaving the original template as it is.

​​In xml file:

        <t t-name="your_module.ListRenderer" t-inherit="web.ListRenderer" t-inherit-mode="primary" owl="1">
        <xpath ...>
            ...
         </xpath>
     </t>

​and then in .js file, you need to replace the ListRenderer's template with the above one:

		​ListRenderer.template = "your_module.ListRenderer";


2、Inherit the web.ListRenderer as you did,  and overwrite the 'web.X2ManyField' including a template reverting the ListRenderer as its component.  

I think this way is more complex and redundant, personally i prefer to the above one.


Avatar
Vazgeç
Üretici

hi..i have tried 1st method..still for o2m list views pin icon is showing..

Hi Shankar:

How you replace the ListRenderer.template value in .js file?
There are 2 ways to inherit js class : extend and patch.
You need to patch the class ListRenderer, which means the js class can work as it did but its attributes and methods might be updated as you patched.

En İyi Yanıt

Hi,
You can refer into coding added in this app:   https://apps.odoo.com/apps/modules/17.0/list_tree_pin_records

Thanks

Avatar
Vazgeç
Üretici

Above reference is to pin the records..but i have inherited pin in list view headers and i need to hide in one2many fields..

İlgili Gönderiler Cevaplar Görünümler Aktivite
1
Tem 20
4792
0
Mar 15
4700
1
May 20
8140
2
May 20
9283
0
Haz 19
7873