Module: Ubiquitous::ModelHelpers

Defined in:
lib/ubiquitous/model_helpers.rb

Class Method Summary collapse

Class Method Details

.create_classesObject



11
12
13
14
15
16
# File 'lib/ubiquitous/model_helpers.rb', line 11

def self.create_classes
  models.each do |model|
    class_name = "#{model}Model"
    Object.const_set(class_name, Class.new(BaseModel))
  end
end

.create_helper_methodsObject



18
19
20
21
22
23
24
25
26
# File 'lib/ubiquitous/model_helpers.rb', line 18

def self.create_helper_methods
  create_classes
  models.each do |model|
    method_name = (model.to_s.downcase).to_sym
    send :define_method, method_name do |index=0|
      "#{model}Model".constantize.new(Capybara.current_session, index, model.new)
    end
  end
end

.modelsObject



7
8
9
# File 'lib/ubiquitous/model_helpers.rb', line 7

def self.models
  Dir['app/models/**/*.rb'].map { |f| File.basename(f, '.*').camelize.constantize }
end