Cancan accessible_by
Asked Answered
M

1

16

What exactly is happening when I do:

@patient.course_enrollments.accessible_by(current_ability)

What seems to happen is I get course_enrollments where course.client_id = user.client.id, I just don't understand how accessible_by works.

# ability.rb
can :manage, CourseEnrollment, :course => {:client_id => user.client.id}
Matsumoto answered 17/3, 2011 at 19:36 Comment(0)
Q
20

accessible_by gives you a scope that includes only those records which you'd be able to access given the current_ability. Since you stated that the :manage ability on CourseEnrollment is filtered by courses owned by the current user, the accessible_by call will add in that same restriction so that the course enrollments returned will all be "accessible by" the current user.

Quijano answered 17/3, 2011 at 21:51 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.