0
class Dog {
static constraints = {
humanSsn(unique: ['name', 'breed'])
//I also tried with just 2 fields, didn't work either.
}
Integer humanSsn
String name
String breed
}
class Human {
static constraints = {
ssn(unique: true)
}
Integer ssn
String name
}
012 :
http://grails.org/doc/1.3.7/ref/Constraints/unique.html
내가이 개 도메인 클래스를 (내가 Grails를 1.3.9을 사용하고 있습니다)
레거시 DB이므로 테이블을 수정할 수 없습니다.
나는 인간을 저장하면, 나는 같은 이름, 품종과 두 개와
def humanoInstance = new Humano(params)
if (humanoInstance.save(flush: true)) {
def newDog = new Dog()
def newDogTwo = new Dog()
newDog.name = "n1"
newDog.breed = "b1"
newDog.humanSsn = humanInstance.ssn
println newDog.validate()
println newDog.getErrors()
newDog.save(failOnError:true)
newDogTwo.name = "n1"
newDogTwo.breed = "b1"
newDogTwo.humanSsn = humanInstance.ssn
println newDogTwo.validate()
println newDogTwo.getErrors()
newDogTwo.save(failOnError:true)
}
humanSsn
을 저장 (단지 테스트) 그러나 불평이나 오류를 던지고없이 어쨌든 2 개를 저장합니다.true
org.springframework.validation.BeanPropertyBindingResult: 0 error
true
org.springframework.validation.BeanPropertyBindingResult: 0 error
내가 뭘 잘못하고 있니?
미리 감사드립니다. 이 때문에 검증을 할 수있다
당신이 옳았습니다. 먼저 인스턴스를 플러시해야했습니다. 감사! –