2012-05-02 3 views
1

첫 번째 레일 프로젝트에서 작업 중이며 레일을 사용하여 작은 사이트를 구축 했으므로 이제 시작하기에 착수하려고합니다. 레일 튜토리얼을 통해 블로그를 만들 수 있습니다.오류 : 양식을 확인하려고 할 때 "알 수없는 유효성 검사기 : 'PresencesValidator'"

내 블로그 게시물의 유효성을 검사 할 때 http://guides.rubyonrails.org/getting_started.html 6.5에 머물러있어 오류 : Unknown validator: 'PresencesValidator'입니다.

여기에 내 게시물 모델

class Post < ActiveRecord::Base 
    validates :name, :presence => { :message => "Name cannot be blank" } 
    validates :title, :presence => { :message => "Title cannot be blank" } 
    validates :content, :presences => { :message => "Content cannot be blank" } 
end 

의 I했습니다 또한 시도 단지 설정 : 존재 => 사실,하지만 같은 오류가 발생했습니다.

이 오류가 발생하는 이유는 무엇이며 어떻게 수정합니까? 당신이 presence를 작성하는 것을 의미 할 때

validates :content, :presences => { :message => "Content cannot be blank" } 

당신은 presences을 썼다 :

답변

14

이 오타 때문입니다.

또한이 메시지는 기본값이므로 실제로 제공 할 필요가 없습니다. 당신이 쓰는하려고 한 코드와 같은 정확한 동작을 수행 할

validates_presence_of :name, :title, :content 

:

마지막으로 한가지, 당신은 세 가지의 존재를 확인하려는 경우 당신은을 통해 하나 개의 라인에서 할 수 있습니다. 두 가지 유효성 검사 구문이 있습니다. 사용하고있는 유효성 검사 구문은 각 특성에 대해 많은 유효성 검사를 수행하는 것이 더 좋습니다. 동일한 유효성 검사를 실행하려는 여러 특성이있을 때 다른 특성이 더 좋다고 개인적으로 생각합니다. 기본적으로 적은 타이핑이 필요합니다.

Validations and Callbacks을 참조하여주십시오. 건배.