У меня есть проект Ruby on Rails, который некоторое время не затрагивался, и я пытаюсь обновить его с Rails 2.0 до 3.1.
Я получаю сообщение об ошибке, когда пытаюсь создать экземпляр одной из моделей. Кажется, что одна из моделей также определена где-то как модуль, и это мешает мне создать его экземпляр.
dgs@dgs-desktop ~/code/spelling $ rails c
Loading development environment (Rails 3.1.1)
ree-1.8.7-head :001 > Spelling.first
NoMethodError: undefined method `first' for Spelling:Module
from (irb):1
ree-1.8.7-head :002 > exit
Класс правописания очень прост:
class Spelling < ActiveRecord::Base
belongs_to :word, :class_name => 'Word', :foreign_key => 'word_id'
end
Я не могу найти, где в приложении (которое довольно мало) этот модуль будет определен:
dgs@dgs-desktop ~/code/spelling $ cd app
dgs@dgs-desktop ~/code/spelling/app $ grep Spelling * -R
models/spelling.rb:class Spelling < ActiveRecord::Base
models/word.rb: has_many :spellings, :class_name => 'Spelling', :foreign_key => 'word_id'
models/spelling_user.rb:class SpellingUser < ActiveRecord::Base
views/layouts/application.html.erb: <title> School Spelling Tests</title>
dgs@dgs-desktop ~/code/spelling/app $ find ./ -name "spelling*"
./views/spellings
./views/admin/spellings
./models/spelling.rb
./models/spelling_user.rb
Кто-нибудь знает, что может быть причиной этого? Или как еще я могу отследить, где этот модуль определяется?