2014-05-22 1 views

답변

1

두 단계 : 관리, 포스트 :

  1. 저장 ability.rb

    수에 넣어 생성 캉캉를 사용

  2. 에서 'USER_ID'로 포스트 모델에서 현재 사용자, , : user_id => user.id

이렇게하면 각 사용자가 whi의 게시물 만 관리 할 수 ​​있습니다. 그는 창작자로 저장되었습니다.

0

CanCan을 사용해야한다고 가정 할 때 귀하의 권리입니다. 이유 당신 인은 authorization

보고있는 인증 & 권한 부여의 차이는 이전 누군가가 시스템 여부에 액세스 할 수 있는지 여부를 정의합니다; 후자는 인증 된 사용자가 특정 리소스에 액세스/변경할 수 있는지 여부를 정의합니다.

CanCan gem은 사용자에게 특정 레코드에 대한 액세스 권한을 부여하기 위해 Ryan Bates가 만들었습니다. 지적 Danny, 당신은 이런 식으로 뭔가를해야합니다 :


연관 시키 userpost을 - 같은 것을 사용

#app/models/post.rb 
Class Post < ActiveRecord::Base 
    belongs_to :user #-> means you need user_id column in posts table 
end 

#app/models/user.rb 
Class User < ActiveRecord::Base 
    has_many :posts 
end 

을 그리고 당신이 사용할 수 있습니다

#app/models/ability.rb 
class Ability 
    include CanCan::Ability 

    def initialize(user) 
    can :edit, Post, user_id: user.id 
    end 

end 

#app/views/posts/index.html.erb 
<% for post in @posts do %> 
    <% if can? :edit, post %> 
     <%= post.title %> 
    <% end %> 
<% end %> 
: 캉캉 같은 보석 권한 부여를 제공하는
관련 문제