module WeakParameters::Controller

Public Instance Methods

validates(action_name, &block) click to toggle source
# File lib/weak_parameters/controller.rb, line 3
def validates(action_name, &block)
  before_action only: action_name do
    validator = WeakParameters::Validator.new(self, &block)
    WeakParameters.stats[params[:controller]][params[:action]] = validator
    WeakParameters.stats[params[:controller]][params[:action]].validate
    if Object.const_defined?(:ActionController) && ActionController.const_defined?(:StrongParameters)
      @permitted_params = validator.strong_params.permit!
    end
  end
  define_method(:permitted_params) { @permitted_params }
end