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

i want to invisible inventory procurements sales variants from the product page for  the portal user.how to solve it

Avatar
Vazgeç
En İyi Yanıt

Hello Aneesh,

In xml, you cannot hide the page using any condition or attrs.

For that, you can override fields_view_get and add the `invisible="1"` attribute on your page on a specific condition(s).

Example:

from lxml import etree

def fields_view_get(self, cr, uid, view_id=None, view_type='form', context=None, toolbar=False, submenu=False): if context is None: context = {} res = super(class_name, self).fields_view_get(cr, uid, view_id=view_id, view_type=view_type, context=context, toolbar=toolbar, submenu=submenu) doc = etree.XML(res['arch']) for node in doc.xpath("//page[@string='My Page']"): if uid in [1, 2, 3]: #ID of the users for whom page should be invisible node.set('invisible', "1") res['arch'] = etree.tostring(doc) return res
Hope this will help you.
Avatar
Vazgeç

Good replay..@ Sudhir Arya

Thank you Ankit for the compliment.

Whoever did flag Sudhir's answer should refrain from doing so! Flagging a post means giving -100 karma points and marking the post as flagged for the moderators.

En İyi Yanıt

I think that using groups would be a better an easier solution overall.

In the view where you want to hide the notebook page create a new view and make it only accesible to the group who shouldn't see the page.

Access the page by xpath

and done :)

Avatar
Vazgeç

for some reason i cant post the code... it should be

'

<xpath expr="//page[0]" position="attributes">

<attribute name="invisible">1</attribute>

</xpath>

'

En İyi Yanıt

Maybe you can add any Group in your XML.

Avatar
Vazgeç