Class: Guts::Ability
- Inherits:
-
Object
- Object
- Guts::Ability
- Includes:
- CanCan::Ability
- Defined in:
- app/models/guts/ability.rb
Overview
Ability class for CanCanCan
Instance Method Summary collapse
-
#initialize(user) ⇒ Ability
constructor
Initializes the user’s abilities.
Constructor Details
#initialize(user) ⇒ Ability
Initializes the user’s abilities
8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
# File 'app/models/guts/ability.rb', line 8 def initialize(user) user ||= Guts::User.new # Loop over group permissions first user.groups.each do |group| group..each do || conditions = { id: ..subject_id } unless ..subject_id.nil? can( ..action.to_sym, subject_class(..subject_class), conditions ) end end # Next, loop over user permissions which can override group permissions user..each do || conditions = { id: ..subject_id } unless ..subject_id.nil? can( ..action.to_sym, subject_class(..subject_class), conditions ) end end |