2012-10-12 4 views
2

저는 일부 서적과 튜토리얼을 따라 가면서 RoR과 협력하고 있습니다. 그러나 이제는 어떤 리소스도 찾지 못하고 구현해야하는데 약간의 도움이 필요합니다. 여기에 내가하고 싶은 것이있다 : 사람들이 로그인하여 볼 ​​수있는 응용 프로그램이있어서 사용자 인이라는 데이터베이스 테이블이있다. 또한 나는 user_rights 테이블을 가지고 있는데, 각 테이블에는 ID, 이름 및 설명이 들어 있습니다. 이제 각 사용자는 여러 권한을 가질 수 있으므로 응용 프로그램의 다른 부분에 액세스 할 수 있습니다. 따라서 :레일 : has_many WITHOUT belongs_to

class User < ActiveRecord::Base 
    attr_accessible :name, :password_digest, :password, :account_nr, :password_confirmation, :email 
    has_many :scope 
    validates :name, presence: true, uniqueness: true 
    validates :account_nr, presence: true 
    validates :email, :presence => true 
    has_secure_password 
end 

과 :

class Scope < ActiveRecord::Base 
    attr_accessible :name, :description 
end 

나는 하지 belongs_to -relationship을 가지고 싶어. 난 그냥 사용자 권한을 가진 작은 테이블을 원하고 각 사용자에게 그들에게 몇 가지를 제공합니다. 그러나 불행하게도, 나는 어떻게 진행해야하는지 전혀 모른다! 아무도 나에게 약간의 힌트를 줄 수 있습니까?

답변

4

다음과 같이 사용자가 many-to-many 연관이 필요합니다. 사용자가 여러 권한을 가질 수 있고 하나의 권한을 여러 사용자에게 할당 할 수 있습니다.

+0

이것은 내가 필요한 것입니다! 고마워, 계속 가만히있어! – user1734861

+0

RailsGuides에 대한 섹션도 참조하십시오. http://guides.rubyonrails.org/association_basics.html#the-has-and-belongs-to-many-association – Dennis

0

내가하려는 것은 승인 (이미 알고있는 것 같습니다)이라고 생각합니다. 사용자 지정 솔루션을 작성하는 경우 휠 재발매 가능성이 높습니다.

RailsCast 사람이 작성한 레일즈 인증 플러그인 CanCan으로 시간을 보내서 사용자의 요구 사항을 충족하는지 확인하는 것이 좋습니다.

+0

안녕하세요! 나는 정말로 바퀴를 재발 명하고있다. 그러나 나는 그것이 배울 필요가 있다고 생각한다. 링크를 가져 주셔서 감사합니다, 나는 그것을 확인합니다,하지만 먼저 플러그인없이 그것을하려고 할 것입니다. 그래서 나는 모든 것이 어떻게 작동 하는지를 배울 수 있습니다 :) – user1734861