module StrongPermitter::Manager

Public Instance Methods

permitted_params() click to toggle source
# File lib/strong_permitter/manager.rb, line 3
def permitted_params
  @permission_class ||= "#{self.class.name.sub('Controller', '')}Permission".camelcase.safe_constantize
  return nil unless @permission_class

  action_hash = @permission_class.actions[action_name.to_sym]

  resource_name = action_hash[:resource] || @permission_class.resource_name || controller_name.singularize
  allowed_params = action_hash[:permitted_params]

  params.required(resource_name).permit(*allowed_params)
end