Module: WeakParameters::Controller

Defined in:
lib/weak_parameters/controller.rb

Instance Method Summary collapse

Instance Method Details

#validates(action_name, &block) ⇒ Object



3
4
5
6
7
8
9
10
11
12
13
# 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