如何为每个项目关联创建基本用户权限?

时间:2009-06-22 22:07:20

标签: ruby-on-rails

我的应用中有公共和私人项目。我想将用户分配给私人项目以供查看和发布。这样做的正确方法是什么?我尝试使用权限列表模型并将其与项目相关联。但是我很困惑,我无法做到。

1 个答案:

答案 0 :(得分:2)

你需要的是一个has_many:通过关系

创建表

  

权限

包含

  

user_id,project_id和权限

你的模特

class Permission < ActiveRecord::Base
  belongs_to :user
  belongs_to :project
end

class User < ActiveRecord::Base
  has_many :permissions, :dependent => true
  has_many :projects, :through => :permissions
end

class Project < ActiveRecord::Base
  has_many :permissions, :dependent => true
  has_many :users, :through => :permissions
end

在权限链接项目,用户和用户对该项目的权限。

我希望这会有所帮助。

此致