has_and_belongs_to_many或has_many用户/组关系?

我正在研究具有以下型号的Rails 3.1应用程序:

用户:

class User  'Group' end 

组:

 class Group  'User' end 

它们之间有一个连接表,groups表也有一个“user_id”列。 我希望能够在我的groups_controller.rb中写这个

 @group = Group.find(params[:id]) foo = @group.owner 

但是当我这样做时,我会遇到以下错误:

 Mysql2::Error: Unknown column 'users.group_id' in 'where clause': SELECT `users`.* FROM `users` WHERE `users`.`group_id` = 1 LIMIT 1 

我不明白为什么它甚至在寻找那个专栏。 任何帮助,将不胜感激!

确保您的groups表具有user_id或owner_id列并尝试以下操作:

  class Group < ActiveRecord::Base has_and_belongs_to_many :users belongs_to :owner, :class_name => 'User' end