Module: Kojac::ModelMethods::ClassMethods
- Defined in:
- lib/kojac/kojac_rails.rb
Instance Method Summary collapse
- #active_model_serializer ⇒ Object
- #crack_key(aKey) ⇒ Object
- #create_policy(aCurrentUser, aOp = nil) ⇒ Object
- #load_by_key(aKey, aOperation = nil) ⇒ Object
-
#policy_class ⇒ Object
used by pundit.
Instance Method Details
#active_model_serializer ⇒ Object
135 136 137 |
# File 'lib/kojac/kojac_rails.rb', line 135 def active_model_serializer "#{self}Serializer".safe_constantize || KojacBaseSerializer end |
#crack_key(aKey) ⇒ Object
139 140 141 142 143 144 145 146 147 |
# File 'lib/kojac/kojac_rails.rb', line 139 def crack_key(aKey) r,id,a = aKey.split_kojac_key result = {} result[:original] = aKey result[:resource] = r if r result[:id] = id if id result[:association] = a if a result end |
#create_policy(aCurrentUser, aOp = nil) ⇒ Object
131 132 133 |
# File 'lib/kojac/kojac_rails.rb', line 131 def create_policy(aCurrentUser,aOp=nil) policy_class.new(aCurrentUser,self,aOp) end |
#load_by_key(aKey, aOperation = nil) ⇒ Object
149 150 151 152 153 154 155 156 157 158 159 160 161 162 |
# File 'lib/kojac/kojac_rails.rb', line 149 def load_by_key(aKey,aOperation=nil) r,id,a = aKey.split_kojac_key rel = by_key(aKey) if id result = rel.first result.prepare(aKey,aOperation) if result.respond_to? :prepare else result = rel.all result.each do |item| item.prepare(aKey,aOperation) if item.respond_to? :prepare end end result end |
#policy_class ⇒ Object
used by pundit
127 128 129 |
# File 'lib/kojac/kojac_rails.rb', line 127 def policy_class "#{self}Policy".safe_constantize || KojacBasePolicy end |