Ruby on rails 3 属于Rails 3并且在Rails 3中有很多

Ruby on rails 3 属于Rails 3并且在Rails 3中有很多,ruby-on-rails-3,class,Ruby On Rails 3,Class,我需要一些帮助。我有两门课: SharedInfo class SharedInfo < ActiveRecord::Base attr_accessible :shared_info_type_id, :severity_id, :source_info_id, :created_date belongs_to :Severity, :foreign_key => :severity_id belongs_to :SharedInfoType, :foreign_key

我需要一些帮助。我有两门课:

SharedInfo

class SharedInfo < ActiveRecord::Base
  attr_accessible :shared_info_type_id, :severity_id, :source_info_id, :created_date
  belongs_to :Severity, :foreign_key => :severity_id
  belongs_to :SharedInfoType, :foreign_key => :shared_info_type_id
  belongs_to :SourceInfo, :foreign_key => :source_info_id
end

它返回一个错误:“未定义”。我做错了什么?

您使用了
camelized
类。您需要将它们替换为
下划线

belongs_to :severity, :foreign_key => :severity_id
belongs_to :shared_info_type, :foreign_key => :shared_info_type_id
belongs_to :source_info, :foreign_key => :source_info_id

HTH

就我而言,它仍然不起作用。我不知道为什么,但它似乎只在ruby 1.8中工作。我使用ruby 1.9 rails 3.2,您需要将严重性和其他类中的其他关联更改为下划线类型。请检查并更改这些。
@sharedinfo.Severity
belongs_to :severity, :foreign_key => :severity_id
belongs_to :shared_info_type, :foreign_key => :shared_info_type_id
belongs_to :source_info, :foreign_key => :source_info_id