0
저는 학계에서 4 명의 앱을 사용하는 방법을 알아 내려고하고 있습니다.레일즈 - Pundit - 해결 방법이 제대로 작동하지 않습니다.
기사 정책과 기사 색인보기가 있습니다.
기사 정책에는 다양한 유형의 사용자에 대한 범위가있는 해결 방법이 있습니다. 내 인덱스 쇼에서
def resolve
if user == @user.id
scope.all.where(user_id: user.id)
elsif user.has_role?(:org_approver)
scope.to_be_reviewed
else
scope.in_state(:publish)
end
end
, 나는 각 사용자에게 그들이 내 해결 방법 내에 맞게하는 범주에 따라 배열에있는 문서를 보여줄 것으로 기대하고있다.
<% policy_scope(Article).sort_by(&:created_at).in_groups_of(2) do |group| %>
<div id="portfolioFiltering" class="masonry-wrapper row">
<% group.compact.each do |article| %>
<div class="col-md-4 col-md-offset-1 portfolioitem Scienza">
<div class="portfolio-item text-
나는 오류를 얻을하지 않습니다,하지만 난 기사의 저자 인 사용자로 로그인 할 때, 나는 (즉, 사용자로) 나에 속하는 모든 기사를 얻을 것으로 기대합니다. 대신 모든 발행 된 기사 만 얻습니다 (내 해결 방법의 마지막 대안).
어디서 잘못 본 사람이 있습니까?
user == @user.id
그것을해야한다 :
user == @user
는 User
목적은 당신이 때 당신을 얻을 것 인 Integer
객체와 동일하지 않습니다 때문에