0

我最近开始学习 Rails,并在http://ruby.railstutorial.org完成了示例应用程序。我正在尝试将用户创建的组添加到示例社交网络。我已经陷入了我应该如何为团队建模的问题。我知道应该有一个拥有该组的用户 ID,并且应该有名称和描述的字符串。除此之外,我不知道组数据模型的其余部分应该是什么样子。先感谢您。

4

2 回答 2

1

如果您希望用户在多个组中,您的关系应该是这样的

class Group < ActiveRecord::Base
  belongs_to :owner, :class_name => "User"
  has_many :memberships
  has_many :members, :through => :memberships
end

class Membership < ActiveRecord::Base
  belongs_to :member, :class_name => "User" 
  belongs_to :group
end

class User < ActiveRecord::Base
  has_many :memberships
  has_many :groups, :through => :memberships
  has_many :owned_groups, :class_name => "Group", :foreign_key => "owner_id"
end
于 2012-07-04T22:48:45.377 回答
0

这样的事情呢?

class Group < ActiveRecord::Base
  has_many :users
end

class User < ActiveRecord::Base
  belongs_to :group
end
于 2012-07-04T22:41:27.673 回答