Sha256: 193c06a3fd6dd221bfaa09dca1993da2e9bc6d8037ae6a462c0b593e7f734d4b
Contents?: true
Size: 640 Bytes
Versions: 8
Compression:
Stored size: 640 Bytes
Contents
# Encapsulation/Separation of precondition logic for Pundit policies module NaturalResource::PolicyPreconditions private def precondition(record, precondition=nil, identifier: nil, message: nil) precondition_met = if block_given? yield else record.public_send(precondition) end identifier ||= record.class.to_s.underscore message ||= "is not #{precondition.to_s.gsub(/\?*$/, '')}" unless precondition_met @failure_status ||= :precondition_failed @errors[identifier] << message end precondition_met end end
Version data entries
8 entries across 8 versions & 1 rubygems