Odoo 8: Many2many фильтр домена
У меня есть несколько типов организаций с отношением many2many, описывающих, какие типы могут быть родительскими для других типов (например, отдел может быть родительским для подотдела и рабочей группы). Это НЕ строгая иерархия (рабочая группа может быть родительской для других рабочих групп), следовательно, отношение many2many.
У меня есть два поля в моем объекте organization_type:allowed_parent_type_ids
и обратноеallowed_children_type_ids
.
Теперь я хочу ограничить поле типа организации в моем объекте организации в зависимости от его родителя, поэтому дочерний элемент «отдела» может выбирать только те типы организаций, которые могут быть дочерними для отделов и т. Д.
В моем виде я попытался:
<field
name="organization_type_id"
domain="[('id', 'in', parent_id.organization_type_id.allowed_children_ids)]"
/>
Я также пытался поместить связанное поле с разрешенными типами в объект моей организации, но всегда получаю сообщение об ошибке. Моя последняя попытка была:
domain=[('id', 'in', allowed_type_ids)]
Это дает сообщение об ошибке:
TypeError: not all arguments converted during string formatting
Клиент на самом деле выбирает объект JSON, такой как "allow_type_ids" =[0,1,2]
и если я заменю allow_type_ids в доменном выражении на[0,1,2]
нет ошибок, и я получаю три типа организации в моем выборе ...