我有这个Grails域类:
class MyClass {
static auditable = true;
String description;
Boolean isActive=true;
Date deletedAt;
static constraints = {
description size: 1..250, blank: false, unique:['deletedAt', 'isActive'], index:'myclass_idx'
deletedAt nullable: true, index:'myclass_idx'
isActive index:'myclass_idx'
}
}
我期望它做的是创建一个不允许重复记录的约束:
id| description | is_active | deleted_at 1 | desc1 | true | (null) 2 | desc1 | true | (null)
但是这种情况发生了。我在这里缺少什么?
UPD:发现只有在相互之间存在空值时才会发生这种情况。如果deleted_at
包含两个相等的日期值,则约束有效。
是否有解决方法?
答案 0 :(得分:0)
最后决定对deletedAt
字段使用默认的非空值。