Module: ThroughCheckboxes::Core
- Defined in:
- lib/throughcheckboxes/core.rb
Defined Under Namespace
Classes: ThroughCheckboxesNameError
Class Method Summary
collapse
Class Method Details
.relation_klass(klass, relation) ⇒ Object
17
18
19
20
21
|
# File 'lib/throughcheckboxes/core.rb', line 17
def self.relation_klass(klass, relation)
source=klass.reflections[relation].options[:source]
relation_klass = source.present? ? source.to_s : relation.to_s
relation_klass.classify.constantize
end
|
.validate(klass, *relations) ⇒ Object
7
8
9
10
11
12
13
14
15
|
# File 'lib/throughcheckboxes/core.rb', line 7
def self.validate(klass, *relations)
for relation in relations
unless (klass.reflections[relation].present? &&
klass.reflections[relation].macro == :has_many &&
klass.reflections[relation].options[:through].present?)
raise ThroughCheckboxesNameError, "#{relation} isn't an has_many :through for model #{klass}, check it out please."
end
end
end
|