2011-12-30 1 views
2

이 튜토리얼 서적을 작성 중이며 레일즈 콘솔에서 내가 만든 사용자 모델을 인식하지 못하는 문제가 발생했습니다.Ruby on Rails 3 튜토리얼 : 콘솔에 명령 입력하기

class user < ActiveRecord::Base 
    attr_accessible :name, :email 
    validates :name, :presence => true 
end 

이 내가 그것을 참조 할 때 내가 콘솔에서 무엇을 얻을 : 여기

이 함께 일하고 어떤 것은 내가 sample_app/app/models/user.rb에있는 내 사용자 모델, user.rb에서 정의한 것입니다 :

Nicholass-MacBook-Pro:sample_app nbkincaid$ rails console 
Loading development environment (Rails 3.1.1) 
ruby-1.9.2-p290 :001 > user.new 
NameError: undefined local variable or method `user' for main:Object from (irb):1 
    from /Users/nbkincaid/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.1.1/lib/rails/commands/console.rb:45:in `start' 
    from /Users/nbkincaid/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.1.1/lib/rails/commands/console.rb:8:in `start' 
    from /Users/nbkincaid/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.1.1/lib/rails/commands.rb:40:in `<top (required)>' 
    from script/rails:6:in `require' 
    from script/rails:6:in `<main>' 

내가 준수해야 할 특정 보석 버전이 있습니까? 아니면 내가 빠뜨린 다른 것이 있습니까? 나는 이것을 이해할 수 없다.

+1

상수, 그래서'클래스 user'이 유효 . –

+0

고맙습니다, 칼. 이것은 나를 위해 일했다. – nbkincaid

답변

5

올바르게 호출하면 클래스 이름을 소문자로 표기 할 수 없습니다.

다음은 작동해야 User

에 클래스 이름을 변경하십시오 :

class User < ActiveRecord::Base 
    attr_accessible :name, :email 
    validates :name, :presence => true 
end 

rails c

User.new

는 대문자로 시작해야합니다
+0

와우, 머리에 못을 박은 다. 고마워, Tigraine, 나는 이것을 장래 기억할 것이다. – nbkincaid

+1

그런 경우 일반적으로 답변을 수락 된 것으로 표시합니다. :) – Tigraine