我有一个One2many字段。在这个字段中我有复选框字段。而且,我已经为复选框选择应用了验证。功能很好。现在,当我选择检查然后返回值,如果没有选择则没有问题。但是,现在我希望如果选择One2many字段中的任何行复选框,则返回值,否则显示警告。意味着,整体One2many的单行复选框足以返回值。
我的代码在这里:
@api.multi
def action_salepack_add(self):
rec = self._context.get('active_ids', [])
wiz = [q.id for q in self.wizard]
res_wiz= []
#here is check box condition#
for s in self.wizard:
if s.check_box==True:
res_wiz.append(s.id)
#check-box condition over#
if rec:
line_values = {'product_id': self.product_id.id,
'wizards': [(6, 0, res_wiz)],
}
sale_order_line = self.env['sale.order.line'].create(line_values)
先谢谢
答案 0 :(得分:3)
我认为您需要添加约束,返回警告;
from openerp.exceptions import ValidationError
@api.constrains('wizard') # wizard is the one2many field
def _check_grade_choisi(self):
for record in self:
l = []
if not any([s.check_box for s in record.wizard]) : #Here i check if all checkbox field is False
raise ValidationError("Your warning")