Module: FormJourney::UsesSingleModel::ClassMethods

Defined in:
lib/form_journey/uses_single_model.rb

Instance Method Summary collapse

Instance Method Details

#model_class(clasz) ⇒ Object



73
74
75
76
77
78
79
80
81
82
83
84
85
# File 'lib/form_journey/uses_single_model.rb', line 73

def model_class(clasz)
  clasz = clasz.is_a?(String) ? self.const_get(clasz) : clasz
  self._model_class = clasz
  hyphenated_class_name = clasz.to_s.gsub(/::/, '')
    .gsub(/(?<=[^\b])([A-Z])/, '_\1')
    .downcase
  class_eval do
    define_method(hyphenated_class_name.to_sym) do
      model_object
    end
  end
  self.send(:helper_method, hyphenated_class_name.to_sym)
end

#model_scope(*scope) ⇒ Object



65
66
67
68
69
70
71
# File 'lib/form_journey/uses_single_model.rb', line 65

def model_scope(*scope)
  if scope.size == 1
    self._model_scope = scope.first
  else
    self._model_scope = scope
  end
end

#params_method(params_method) ⇒ Object



61
62
63
# File 'lib/form_journey/uses_single_model.rb', line 61

def params_method(params_method)
  self._params_method = params_method
end