没有找到名为的协会

Bil*_*med 4 ruby-on-rails ruby-on-rails-2

我用Rails 2工作,我有三个表:users,lms_usersgroup_details.

lms_usersid usersgroup_details来自外键.lms_users也有自己的属性.我无法在各自的模型中定义关联.我试过这个:

LmsUser模型中

belongs_to :users
belongs_to :group_details
Run Code Online (Sandbox Code Playgroud)

User模型中

has_many :group_details , :through => :lms_users
Run Code Online (Sandbox Code Playgroud)

GroupDetail模型中

has_many :users , :through => :lms_users
Run Code Online (Sandbox Code Playgroud)

但是我收到了这个错误

ActiveRecord::ConfigurationError in Lms usersController#index
Association named 'lms_user' was not found; perhaps you misspelled it?
Run Code Online (Sandbox Code Playgroud)

Sam*_*cey 5

您需要将您正在经历的关联添加为has_many.

例如,您的user.rb应如下所示:

has_many :lms_users
has_many :group_details , :through => :lms_users
Run Code Online (Sandbox Code Playgroud)

您的group_detail.rb应包含以下内容:

has_many :lms_users
has_many :users , :through => :lms_users
Run Code Online (Sandbox Code Playgroud)

:通过一个关联,所以关联需要已经建立.

  • 除了@cheeseweasel答案之外,在LmsUser模型中应该有一个变化,关联应该是`belongs_to:user`而不是用户和`belongs_to:group_detail`而不是group_details (2认同)