성배에서 정수로 크기 제약을 사용하십시오
-
19-09-2019 - |
문제
참조 문서는 크기 제약이라고 말합니다.
그루비 범위를 사용하여 수집 또는 숫자의 크기 또는 문자열의 길이를 제한합니다.
정수에 크기 제약을 넣으면 경고를받습니다.
도메인 클래스의 속성 [prop] theclass는 [java.lang.integer] 유형을 가지며 제약 조건 [크기]을 지원하지 않습니다. 이 제약 조건은 검증 중에 확인되지 않습니다.
문서가 잘못 되었나요?
나는 범위를 사용할 수 있지만 일반적으로 실제 값보다는 숫자의 숫자 양을 지정하는 것이 더 쉽습니다 (사회 보장 번호는 7 자리가 있어야합니다. 100000-999999).
해결책
숫자 수를 원한다면 숫자가 양수이고 길이가 특정인지 확인하십시오.
myInteger( validator: {
return it > 0 && (it.toString.length) == 7
})
다른 팁
Jira를 검색하는 동안 답을 찾았습니다. http://jira.codehaus.org/browse/grails-947. 문서가 잘못되었습니다.
이 기능은 각각 최소, 최대 및 범위 제약 조건에 있기 때문에 더 이상 숫자 필드에 대한 최소 크기, 최대 크기 및 크기 제약 조건이 필요하지 않습니다. 따라서 이러한 제약 조건 (숫자 필드에 대해서만)을 0.5로 더 이상 사용하지 않고 0.6으로 제거합니다.
사용자 정의 유효성 검사기에 달려있는 것 같습니다.
Max를 사용하여 Myintprop과 같은 정수를 제한 할 수도 있습니다 (Max : 9999999).
제휴하지 않습니다 StackOverflow