Как создать базовые разрешения пользователя для каждой ассоциации проекта? - PullRequest
0 голосов
/ 23 июня 2009

У меня есть публичные и частные проекты в моем приложении. Я хочу назначить пользователя частным проектам для просмотра и публикации. Какой правильный способ сделать это? Я попытался с моделью списка разрешений и связал ее с проектом. но я так растерялся, что не смог этого сделать.

1 Ответ

2 голосов
/ 23 июня 2009

Что вам нужно, так это 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

в разрешениях связывает проект, пользователя и разрешение, которое пользователь имеет на этот проект.

Надеюсь, это поможет.

Привет

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...