如何解决唯一值但如何防止拼写错误 - Odoo
我可以使用下面提到的 _sql_constraints 来防止重复,但是当用户输入时:
面包店
面包店
面包
等等...
如何防止用户不输入此类值?
> _sql_constraints = [
>
> ('categoryname_unique',>
> 'unique(name)',>
> 'each category should be unique'),>
> ]
解决方法
我相信 _sql_constraints 不区分大小写,所以 Bakery 应该被视为与 bakery 相同,因此无法创建记录如果它是不同情况下的相同属性。对吗?
,或者,您可以将其更改为 selection
字段。而不是用户输入值,让经理创建该值,用户将从列表中选择它。
至少我可以避免重复拼写相同但在任何一种情况下(不区分大小写)使用以下代码(感谢 odoo 论坛 - @Neha Sharma-Kanak)
@api.constrains('name')
def _check_unique_brand(self):
brand_ids = self.search([]) - self
value = [x.name.lower() for x in brand_ids]
if self.name and self.name.lower() in value:
raise ValidationError(_('The Brand Name is already Exist'))
return True
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。