在odoo10中,我在更改名称时编写了一个@ api.onchange函数,如果名称已在数据库中,则返回警告弹出窗口,因此在名称字段中输入后单击“保存”按钮然后返回警告弹出窗口保存在我不想要的背景上。
那么,这里的实际问题是什么? 请在下面找到附件截图。 感谢
答案 0 :(得分:1)
如果问题是Odoo允许您在显示警告后保存记录(尽管数据库中已存在该名称),则必须向模型添加SQL约束,因为onchange方法中的警告不会阻止用户存储记录。
_sql_constraints = [
('name_unique', 'unique(name)',
'There is another record with the same name stored in the database!')
]
当然,您可以保留onchange警告,以便让用户知道如果他们保留该名称,他们在保存记录时会收到错误。