コンテンツへスキップ
メニュー
この質問にフラグが付けられました
1 返信
6512 ビュー

Suppose I have Product with 3 Variation

Suppose i name attribute_name as ' KG' and have 3 variation 1,5,10

How do i reference the value of variation in sale order ? 

i have try these but it doesn't work

self.product_id.attribute_value_ids.attribute_id.value_ids.name

it gives me this error

  File "/odoo/odoo-server/odoo/models.py", line 4823, in ensure_one
    raise ValueError("Expected singleton: %s" % self)
ValueError: Expected singleton: product.attribute.value(6, 7, 9)

as i need these value to multiply with ordered quantity to give out total quantity

what else can it goes wrong ? 

アバター
破棄
最善の回答

Hi,

Try this self.product_id.display_name

Thanks


アバター
破棄
著作者

Hi, what i want is the value of attribute like 1,5,10 i have tried display_name it doesnt solve. please help

ok, you are getting the error because you have to use a for loop there, try something like this,

productVariants = self.env['product.product']

products = productVariants.search([])

for rec in products:

if rec.attribute_value_ids.name:

print "product with variants", rec.name + '(' + rec.attribute_value_ids.name + ')'

関連投稿 返信 ビュー 活動
1
7月 24
3230
6
6月 20
3589
1
7月 25
381
2
8月 23
2384
1
7月 23
2539