class RenameParams::Macros::Move

Public Class Methods

def_move(klass, *args) click to toggle source
# File lib/rename_params/macros/move.rb, line 6
def def_move(klass, *args)
  move_param = args.shift
  options = build_options(*args)

  klass.before_action(options[:filters]) do |controller|
    params = RenameParams::Params.new(controller.params, controller)
    params.move(move_param, options[:to], options[:namespace]) if options[:to]
  end
end

Private Class Methods

build_options(args = {}) click to toggle source
# File lib/rename_params/macros/move.rb, line 18
def build_options(args = {})
  {
    to: move_to_options(:to, args),
    namespace: namespace_options(args),
    filters: filter_options(args)
  }
end