1

我有用户和项目。用户可以有很多项目,项目可以有很多用户。现在项目有一个特定的用户作为作者或创建者,即。项目有一个创建者,该创建者也是用户。我如何在 rails 中映射这种关系!!!

4

2 回答 2

0
#Project
has_and_belongs_to_many :users
belongs_to :author, :class_name => "User"

#User
has_and_belongs_to_many :projects
has_many :authored_projects, :class_name => "Project", :foreign_key => "author_id"

您需要添加author_id到项目表中。

所以你可以使用: project.author, user.authored_projects, 等

于 2012-05-24T09:29:55.177 回答
0

试试这个

class User < ActiveRecord::Base
 has_and_belongs_to_many :projects
 has_many :created_projects, :class_name => "Project", :foreign_key => "creator_id"    
end



class Project< ActiveRecord::Base
 has_and_belongs_to_many :users  
 belongs_to :creator, :class_name => "User"
end
于 2012-05-24T09:49:37.033 回答