当我这样做的时候,到底发生了什么:
@patient.course_enrollments.accessible_by(current_ability)似乎发生的事情是我在哪里得到了course_enrollments course.client_id = user.client.id,我只是不明白accessible_by是如何工作的。
# ability.rb
can :manage, CourseEnrollment, :course => {:client_id => user.client.id}发布于 2011-03-18 05:51:52
accessible_by为您提供了一个作用域,该作用域仅包括那些您可以在给定current_ability的情况下访问的记录。由于您指出CourseEnrollment上的:manage功能是按当前用户拥有的课程进行过滤的,因此accessible_by调用将添加相同的限制,以便返回的课程注册将全部由当前用户“访问”。
https://stackoverflow.com/questions/5344247
复制相似问题