2013-06-27 2 views
1
class User < ActiveRecord::Base 
    attr_accessible :email, :name 
    validates :name,:presence=>true, 
           :length=>{:maximum=>15} 
    validates :email,:presence=>true, 
           :length=>{:maximum=>15} 

end 

저는 레일을 처음 사용하기 때문에 유효성 검사기 중 가장 간단한 것이 작동하지 않습니다. 나는 내가 어리석은 실수를 저지르고 있다고 생각한다. 나는 2 개의 속성만을 가진 User 모델을 가지고 있고 루비 콘솔에 새로운 사용자를 생성 할 때 이름이 없거나 15 문자보다 긴 이름 같은 유효하지 않은 유효성 검사를 할 때 즐겁게 추가됩니다. 제발 suggest.I 레일즈 버전을 사용하고 있습니다 : 3.2.13과 루비 버전 : 1.9.3레일 간단한 검증이 작동하지 않습니다.

+0

과 유효성 검사 오류를 볼 수

user = User.new(email: "[email protected]gmail.com") user.save 

: 당신은 이런 식으로 뭔가를 시도해야한다? 레코드가 실제로 데이터베이스에 추가되었는지 확신합니까? ('User.all'은 당신이 추가 한 레코드를 나열합니까?) – Domon

+0

이메일에': presence => false'라고 말하면, 왜 컬럼 자체를 삭제하지 않습니까? –

+0

그것을 지적 해 주셔서 고맙습니다. 여기에 지금 편집하십시오. – user2526795

답변

2

레일 콘솔에있는 경우 모델을 변경 한 후 reload!을 입력해야합니다. 이렇게하면 모든 변경 사항이 콘솔 인스턴스에 다시로드됩니다.

또한 이러한 모델을 저장 하시겠습니까? 마지막 줄의 결과가 false 경우 당신은 당신이 레일 서버 또는 콘솔이 검증을 추가 한 후 다시 시작 했

p user.errors 
+0

안녕하세요. :) 내 결과가 있습니다. – user2526795

관련 문제