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
136 137 138 |
# File 'lib/kojac/kojac_rails.rb', line 136 def active_model_serializer "#{self}Serializer".safe_constantize || KojacBaseSerializer end |
#crack_key(aKey) ⇒ Object
140 141 142 143 144 145 146 147 148 |
# File 'lib/kojac/kojac_rails.rb', line 140 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
132 133 134 |
# File 'lib/kojac/kojac_rails.rb', line 132 def create_policy(aCurrentUser,aOp=nil) policy_class.new(aCurrentUser,self,aOp) end |
#load_by_key(aKey, aOperation = nil) ⇒ Object
150 151 152 153 154 155 156 157 158 159 160 161 162 163 |
# File 'lib/kojac/kojac_rails.rb', line 150 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
128 129 130 |
# File 'lib/kojac/kojac_rails.rb', line 128 def policy_class "#{self}Policy".safe_constantize || KojacBasePolicy end |