Rails uses wrong class in belongs_to
Posted
by macsniper
on Stack Overflow
See other posts from Stack Overflow
or by macsniper
Published on 2010-05-28T10:46:21Z
Indexed on
2010/05/28
11:31 UTC
Read the original article
Hit count: 154
ruby-on-rails
|associations
I have an application managing software tests and a class called TestResult:
class TestResult < ActiveRecord::Base
belongs_to :test_case, :class_name => "TestCase"
end
I'm right now migrating from Rails 1.x to 2.3.5.
In Rails 1.x everything works fine.
When trying to access the association in Rails 2.3.5, I get the following error:
NoMethodError: undefined method 'find' for ActiveRecord::TestCase:Class from /usr/lib/ruby/gems/1.8/gems/activerecord-2.3.5/lib/active_record/associations/belongs_to_association.rb:49:in 'send'
from /usr/lib/ruby/gems/1.8/gems/activerecord-2.3.5/lib/active_record/associations/belongs_to_association.rb:49:in 'find_target'
from /usr/lib/ruby/gems/1.8/gems/activerecord-2.3.5/lib/active_record/associations/association_proxy.rb:239:in 'load_target'
from /usr/lib/ruby/gems/1.8/gems/activerecord-2.3.5/lib/active_record/associations/association_proxy.rb:112:in 'reload'
from /usr/lib/ruby/gems/1.8/gems/activerecord-2.3.5/lib/active_record/associations.rb:1250:in 'test_case'
My Question is: how can I tell Rails to use my TestCase-class instead of ActiveRecord::TestCase.
TestCase class:
class TestCase < ActiveRecord::Base
set_table_name "test_case"
has_many :test_results
belongs_to :component, :foreign_key => "subsystem_id"
belongs_to :domain, :foreign_key => "area_id"
belongs_to :use_case, :foreign_key => "use_case_id"
end
© Stack Overflow or respective owner