module SimpleAction::DelegatesToParams
Public Instance Methods
method_missing(sym, *args, &block)
click to toggle source
Calls superclass method
# File lib/simple_action/concerns/delegates_to_params.rb, line 34 def method_missing(sym, *args, &block) if pass_sym_to_params?(sym) params.send(sym, *args, &block) else super(sym, *args, &block) end end
respond_to?(sym, include_private = false)
click to toggle source
Calls superclass method
# File lib/simple_action/concerns/delegates_to_params.rb, line 30 def respond_to?(sym, include_private = false) pass_sym_to_params?(sym) || super(sym, include_private) end
Private Instance Methods
attributes_method?(sym)
click to toggle source
# File lib/simple_action/concerns/delegates_to_params.rb, line 62 def attributes_method?(sym) sym.to_s.gsub('=', '').end_with?('_attributes') end
build_method?(sym)
click to toggle source
# File lib/simple_action/concerns/delegates_to_params.rb, line 66 def build_method?(sym) sym.to_s.gsub('=', '').start_with?('build_') end
client_side_validation_method?(sym)
click to toggle source
# File lib/simple_action/concerns/delegates_to_params.rb, line 74 def client_side_validation_method?(sym) sym.to_s.start_with?('client_side_validation') end
delegatable_params_method?(sym)
click to toggle source
# File lib/simple_action/concerns/delegates_to_params.rb, line 49 def delegatable_params_method?(sym) params_accessor?(sym) || attributes_method?(sym) || build_method?(sym) || validators_method?(sym) || client_side_validation_method?(sym) end
params_accessor?(sym)
click to toggle source
# File lib/simple_action/concerns/delegates_to_params.rb, line 57 def params_accessor?(sym) stripped = sym.to_s.gsub('=', '').to_sym params.attributes.include?(stripped) end
pass_sym_to_params?(sym)
click to toggle source
# File lib/simple_action/concerns/delegates_to_params.rb, line 43 def pass_sym_to_params?(sym) params.present? && delegatable_params_method?(sym) && params.respond_to?(sym) end
validators_method?(sym)
click to toggle source
# File lib/simple_action/concerns/delegates_to_params.rb, line 70 def validators_method?(sym) sym.to_s.sub('?', '').end_with?('_validators') end