Я хочу искать записи одного поля, которое зависит от других полей.
вот мой код,odoo/openERP one2many fields dynamic domain
Родитель Класс:
class SaleOrder(models.Model):
_inherit = 'sale.order'
customer_product_ids = fields.One2many('product.product',
compute='_get_partner_products')
order_line = fields.One2many('sale.order.line', 'order_id')
Детский класс:
class SaleOrderLine(models.Model):
_inherit = 'sale.order.line'
order_id = fields.Many2one('sale.order')
product_id = fields.Many2one('product.product')
Просмотр
<record id="view_ata_sale_order_form_inherit" model="ir.ui.view">
<field name="name">view.ata.sale.order.form.inherit</field>
<field name="model">sale.order</field>
<field name="inherit_id" ref="sale.view_order_form"/>
<field name="arch" type="xml">
<field name="partner_id" position="after">
<field name="partner_channel_id" invisible="1"/>
<field name="customer_product_ids"/>
</field>
<xpath expr="//tree/field[@name='product_id']" position="attributes">
<attribute name="domain">[('id', 'in', [rec.id for rec in parent.customer_product_ids])]</attribute>
</xpath>
</field>
</record>
По умолчанию, клиент может видеть все продукты, определенные.
В моем случае, я должен фильтровать продукты зависит от выбранного клиента.
У каждого клиента могут быть разные продукты списка или если они не классифицируются, они могут видеть все продукты.
Я попытался код, приведенный выше, но получил сообщение об ошибке:
Uncaught Error: Expected "]", got "(name)"
Я думаю, ошибка приходят из этого кода:
<attribute name="domain">[('id', 'in', [rec.id for rec in parent.partner_product_ids])]</attribute>
мой вопрос,
есть возможность сделать понимание цикла питон как код выше (в пределах представления)?
спасибо.
Привет, Алессандро, спасибо за ваше предложение, я думаю, что нашел другой способ сделать это :) – yopiangi