Я хочу искать записи одного поля, которое зависит от других полей.
здесь мой код,
Родительский класс:
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>
мой вопрос,
возможно ли сделать понимание цикла python, как код выше (в поле зрения)?
Спасибо.