class SampleModels::Model

Attributes

ar_class[R]

Public Class Methods

new(ar_class) click to toggle source
# File lib/sample_models/model.rb, line 7
def initialize(ar_class)
  @ar_class = ar_class
  @validations = Hash.new { |h,k| h[k] = [] }
end

Public Instance Methods

__getobj__() click to toggle source
# File lib/sample_models/model.rb, line 12
def __getobj__
  @ar_class
end
associations() click to toggle source
# File lib/sample_models/model.rb, line 16
def associations
  @ar_class.reflect_on_all_associations.map { |a| Association.new(a) }
end
belongs_to_association(name) click to toggle source
# File lib/sample_models/model.rb, line 20
def belongs_to_association(name)
  belongs_to_associations.detect { |a| a.name.to_s == name.to_s }
end
belongs_to_associations() click to toggle source
# File lib/sample_models/model.rb, line 24
def belongs_to_associations
  associations.select { |a| a.belongs_to? }
end
has_many_associations() click to toggle source
# File lib/sample_models/model.rb, line 28
def has_many_associations
  associations.select { |a| a.has_many? }
end
record_validation(*args) click to toggle source
# File lib/sample_models/model.rb, line 32
def record_validation(*args)
  type = args.shift
  config = args.extract_options!
  fields = args
  fields.each do |field|
    @validations[field.to_s] << Validation.new(type, config)
  end
end
unique?(field, value) click to toggle source
# File lib/sample_models/model.rb, line 41
def unique?(field, value)
  @ar_class.count(:conditions => {field => value}) == 0
end
validated_attr_accessors() click to toggle source
# File lib/sample_models/model.rb, line 45
def validated_attr_accessors
  @validations.keys.select { |key|
    columns.none? { |column| column.name.to_s == key.to_s }
  }
end
validations(name) click to toggle source
# File lib/sample_models/model.rb, line 51
def validations(name)
  @validations[name.to_s]
end