Module: ModelFields
- Defined in:
- lib/relata/dsl/querys/fields.rb
Class Method Summary collapse
Class Method Details
.extended(base) ⇒ Object
3 4 5 6 7 8 9 10 11 12 13 14 15 |
# File 'lib/relata/dsl/querys/fields.rb', line 3 def self.extended(base) @fields = [] base.reflect_on_all_associations.each do |r| r.klass.columns.each do |c| @fields << c.name if [:string, :text].include? c.type end end @fields.each do |field| include_method field if field != nil end end |
.include_method(field) ⇒ Object
18 19 20 21 22 23 24 25 26 27 28 |
# File 'lib/relata/dsl/querys/fields.rb', line 18 def self.include_method(field) define_method field do @record.reflect_on_all_associations.each do |r| @current_field = @current_field.to_s.pluralize if r.macro.to_s.eql? "belongs_to" end @current_field = "#{@current_field}.#{field}" self end end |