1. ホーム
  2. ruby-on-rails

[解決済み] Rubyのクラスで未初期化の定数エラーが発生する

2022-02-07 08:38:25

質問

RubyMineに以下の2つのクラスがあります。

book.rb :

 class Book
   def initialize(name,author)
   end
 end

test.rb :

require 'book'
class teste
   harry_potter = Book.new("Harry Potter", "JK")
end

を実行すると test.rb このようなエラーが発生します。

C:/Users/DESKTOP/RubymineProjects/learning/test.rb:3:in `<class:Test>': uninitialized constant Test::Book (NameError)
from C:/Users/DESKTOP/RubymineProjects/learning/test.rb:1:in `<top (required)>'
from -e:1:in `load'
from -e:1:in `<main>'

解決方法は?

Railsアプリでは、ファイル名を変更せずにクラス名を変更した場合にも、このエラーが発生することがあります。

book.rb

class Book
  def initialize(name, author)
  end
end

book_test.rb

class BookTest
  harry_potter = Book.new("Harry Potter", "JK")
end