跳至內容
選單
此問題已被標幟
1 回覆
5480 瀏覽次數

I'm trying to add a domain to an Odoo V10 field for a `sale.order.line`. Specifically, I'm trying to ensure that the only Route available to choose are ones with the same name as the product related to the order line. Here is my attempt:

Here is the original out-of-the-box field definition for `route_id` on a `sale.order.line`:

     <field name="route_id" groups="sale_stock.group_route_so_lines">

I modified it to include a domain like so:

    <field name="route_id" groups="sale_stock.group_route_so_lines" domain="[('name', '=', product_id.name)]"/>

However, I seem to be unable to access the related `product.product` via the `product_id` attribute. From what I can tell, the `product_id` is simply returning the id, rather than the actual record itself. Therefore, when I try to chain the call to `name`, it doesn't work.

I get the following error when clicking into the Routes field on the order line:

    Uncaught Error: AttributeError: object has no attribute 'name'

Does anybody know the proper way to add this domain to the view?

頭像
捨棄
最佳答案

Create a computed field that return the proper value to compare with using the field argument related with that path or use the computed field argument to calculate the value of the field using a function.

You will also need to setup an onchange for product changes to update the value on the view

Hope this hep you

頭像
捨棄
相關帖文 回覆 瀏覽次數 活動
2
12月 19
3004
0
11月 18
3270
2
12月 16
5220
2
11月 23
7510
2
5月 23
7791