2013-02-08 1 views
0

내가 이런 식으로 확인하는 나의 모델에 별도의 방법이 errors.add 사용레일 검증이

validates_format_of : PROJECT_ID : (?! \ d + $) [a-z0-9 -_] * $/

문자와 숫자는 밑줄과 대시 및 공백없이 유효성을 검사합니다.

내 validate_id 메소드에서 사용할 수있는 방법이 있습니까?

미리 감사드립니다

답변

1

시도 :

def validate_id 
    errors.add(:base, "Id Should Not Blank") if /^(?!\d+$)[a-z0-9-_]*$/.match(self.project_id).nil? 
end 
+1

self.project_id.scan (?!/^ (\ D + $) [A-Z0-9 \ -_] * $ /) 비어 있습니다. ? == true 너무 효과가 있습니다. 감사합니다. – Supersonic

+1

환영합니다 @Hivltg, #scan은 정규식과 일치하는 모든 것을 반환하고 #match는 첫 번째 일치 항목을 MatchData 개체로 반환합니다. – shweta

관련 문제