У меня много2одно поле name_id. Обычно, когда я использую его в коде my_model.xml ниже, в этом поле я могу выбрать из всех значений, записанных в my.model.line. В этом случае я хочу отфильтровать значения и увидеть список только тех значений, которые записаны в текущей модели my.model.
моя_модель.xml
<record model="ir.ui.view" id="view_my_model_form">
<field name="name">my.model.form</field>
<field name="model">my.model</field>
<field name="arch" type="xml">
<form string="My Model">
<header>
<field name="my_model_line">
<tree>
<field name="name"/>
</tree>
</field>
<notebook>
<page>
<field name="supply_conditions_status">
<tree string="My model Lines">
<field name="name_id"/>
</tree>
Классы:
class SupplyConditions(models.Model):
_name = 'supply.conditions'
name_id = fields.Many2one('my.model.line', string='Product')
model_id = fields.Many2one('my.model')
class MyModelLine(models.Model):
_name = 'my.model.line'
name = fields.Char('Name')
my_model_id = fields.Many2one('my.model')
class MyModel(models.Model):
_name = 'my.model'
title = fields.Char('Title')
my_model_line = fields.One2many('my.model.line', 'my_model_id')
supply_conditions_status = fields.One2many('supply.conditions', 'model_id')
Для более ясного понимания - пример:
У меня есть вид формы my.model (имя поля = «первый») и my.model (имя поля = «второй»).
В my.model (name = 'first') В поле имени my_model_line добавлены данные: 'item1', 'item2'
В my.model (name = 'second') В поле имени my_model_line добавлены данные: '1item', '2item'
Сейчас:
В поле my.model (name = 'first') Supply_conditions_status name_id я вижу выбор: «1item», «2item, item1», «item2»
Потребность:
В my.model (name = 'first') Supply_conditions_status name_id возможность выбирать только из 'item1', 'item2'
Как я могу этого добиться?