我有一个问题,我的域类有两个潜在的互斥外部键,序列号或传统查找值。如何为Grails域类中的两个字段创建和异或验证?
因为我不确定哪一个我会有任何给定的条目,我已经让他们都可以为空,并添加自定义验证,以确保我有一个且只有一个值。
package myproject
class Sample {
String information
String legacyLookup
String serialNumber
static constraints = {
information(nullable: true)
legacyLookup(nullable: true)
serialNumber(nullable: true)
legacyLookup validator: {
return ((serialNumber != null && legacyLookup == null) || (serialNumber == null && legacyLookup != null))
}
serialNumber validator: {
return ((serialNumber != null && legacyLookup == null) || (serialNumber == null && legacyLookup != null))
}
}
}
我创建的默认CRUD屏幕,并试图为此域创建类
information: Blah Blah
serialNumber:
legacyLookup: BLAHINDEX123
这死在验证以下消息的条目:
No such property: serialNumber for class: myproject.Sample
我是什么失踪?
这正是我所需要的。我在想,我需要在两个领域明确验证,但一个处理另一个领域。谢谢! – GeoGriffin 2012-07-15 02:21:17