У меня есть функция, выполняемая в api.onchange('bom_line_ids')
, внутри этой функции я хочу иметь оператор if для очистки bom_line_ids, если условие соответствует. Я использовал self.bom_line_ids.product_id = False
но почему-то поле очищается (видел это в отпечатках, но в представлении не обновляется).
@api.onchange('bom_line_ids')
def get_excl_list(self):
list1 = []
for i in self.excl_list:
list1.append(i.id)
list2 = []
for j in self.bom_line_ids:
list2.append(j.product_id.id)
if j.product_id.id in list1:
warning_message = "Product: " + self.env['product.template'].search([('id','=',j.product_id.id)]).name + " can't be added to the BoM.\n Please select another product."
print "self.bom_line_ids.product_id", self.bom_line_ids.product_id
self.bom_line_ids.product_id = False
print "self.bom_line_ids.product_id", self.bom_line_ids.product_id
return { 'warning': {'title': 'Product error', 'message':warning_message} }