Skip to Content
Menu
This question has been flagged
1 Reply
1787 Views

Hi,


I have a product (t-shirts) with different product_no_variant_attribute_value_ids like colors, sizes, styles, etc


I'm creating a report and need search and show only the products that have the product_no_variant_attribute_value_ids == 'COLOR', like this


X brand T-shirt -> blue

Y brand T-shirt -> red


The solution I've found is to loop through EVERY attribute of that product and see if it matches "COLOR", but there must be an easier way


My code:

⩽t t-foreach="doc.order_line" t-as="line"⩾
    ⩽t t-set="counter" t-value="0"⩾
    ⩽t t-foreach="line.product_no_variant_attribute_value_ids.attribute_id" t-as="attrib"⩾
        ⩽t t-if="attrib.name == 'COLOR'"⩾            
            ⩽span t-field="line.product_id.name"⩾
            ⩽span t-field="line.product_no_variant_attribute_value_ids.product_attribute_value_id[counter].name"⩾
        ⩽/t⩾
        ⩽t t-set="counter"\ t\-value="counter+1"⩾
    ⩽/t⩾
⩽/t⩾



How can I search if the product_no_variant_attribute_value_ids contains an attribute named color?





Avatar
Discard
Author Best Answer

Found it, the answer is:

line\.product_no_variant_attribute_value_ids\.filtered\(lambda\ x:\ x.attribute_id.name == 'COLOR').product_attribute_value_id.name

Avatar
Discard
Related Posts Replies Views Activity
4
Nov 23
1772
3
Mar 21
5938
1
Mar 15
6074
1
Mar 15
4872
2
Mar 24
537