2014-04-22 4 views
2

모델 사용자가 있습니다. 몇 가지 모델 필드의 유효성 검사를 건너 뛰는 방법

바로 여기에

몇 검증 필드 :
validates :first_name, presence:{ message: "please add your First name"} 
validates :last_name, presence:{ message: "please add your Last name"} 
validates :username, presence:{ message: "please pick a username"}, 

내가 고안 사용하여 로그인을 시도

, 나는 이름과 성을 제공해야 메시지가 있습니다. 그러나 등록을 위해 나는 사용자 이름, 전자 메일, 암호와 같은 3 개의 필드 만 사용하고자합니다.

등록시 이름과 성을 어떻게 검증합니까? 감사합니다. .

enter image description here

답변

1

당신은 새로운 사용자를 생성하는 동안 실행 first_name, last_name에 대한 검증을하지 않으려하지만 기존 사용자 레코드를 업데이트하는 동안 당신이 그들을합니다. updating 사용자 기록이있는 동안에 만 실행되도록 검증을 수정하면됩니다.

validates :first_name, presence:{ message: "please add your First name"}, on: :update 
validates :last_name, presence:{ message: "please add your Last name"}, on: :update 
:

아래로 on: :update 옵션을 사용하여이 작업을 수행 할 수 있습니다

관련 문제