Method: Trailblazer::V1_1::Operation::Policy::Permission#call

Defined in:
lib/trailblazer/1.1/operation/policy.rb

#call(user, model, external_policy = nil) ⇒ Object

Without a block, return the policy object (which is usually a Pundit-style class). When block is passed evaluate the default rule and run block when false.



59
60
61
62
63
64
# File 'lib/trailblazer/1.1/operation/policy.rb', line 59

def call(user, model, external_policy=nil)
  policy = build_policy(user, model, external_policy)

  policy.send(@action) || yield(policy, @action) if block_given?
  policy
end