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