module CrewdPolicies::Model

these methods should actually work on any object with any abilities

Public Class Methods

included(aClass) click to toggle source
# File lib/crewd_policies/model.rb, line 5
      def self.included(aClass)
              aClass.class_attribute :roles_rules, instance_predicate: false, instance_accessor: false
  aClass.roles_rules ||= {}   # [:sales] => [
                                                                                                                      #               {ability: 'read', fields: [:name,:address]}
                                                                                                                      #               {ability: 'destroy', allowed: true}
                                                                                                                      #             ]
  aClass.send :extend, ClassMethods
end