تخطي للذهاب إلى المحتوى
القائمة
لقد تم الإبلاغ عن هذا السؤال
5 الردود
6889 أدوات العرض

Hello All,

I want to hide/invisible some fields in product form based on product category

Thanks in advance

Ankit H Gandhi

الصورة الرمزية
إهمال
أفضل إجابة

Hello Ankit,

based on the category name you can hide/invisible the field, but for that you have to store the category name into the product form. 

second way is that put one boolean field into product category and based on that boolean field you can hide/invisible the field, but i think in this also you have to store the boolean field value into product form. For this you can see the example in odoo like go to picking form view there is one tab "Detailed Operations" that is based on the stock.picking.type's "show Detailed operation" field.

I hope this will helps you.

الصورة الرمزية
إهمال

Good idea.

الكاتب

Hi Mitul,

Your solutions are working for me.

Thank you +1

الكاتب أفضل إجابة

Hello All,

Using below code I have acheived solution

Create new related field in Product Template model, Which store the Parent Category Name.

categ_name = fields.Char(related='categ_id.parent_id.name',
string='Category Name')
Define that categ_name field in xml file with invisible='1'
Now add attrs on field

<xpath expr="//field[@name='internal_reference']" position="attributes">

<attribute name="attrs">{'invisible': [('categ_name','=','Saleable')]}</attribute>
</xpath>

 Thanks @ Mitul Shingala

Best Thanks,

Ankit H Gandhi

الصورة الرمزية
إهمال
أفضل إجابة

Hi, just inherit the view of the product "product_template_form_view" and then do a xpath like this:

<xpath expr="//field[@name='internal_reference']" position="attributes">

<attribute name="attrs">{'invisible': [('categ_id','=','id category')]}</attribute>
</xpath>



الصورة الرمزية
إهمال
المنشورات ذات الصلة الردود أدوات العرض النشاط
1
يناير 24
4606
0
سبتمبر 19
2948
2
مارس 15
4469
3
فبراير 24
12667
0
مارس 15
3844