Sha256: 31eafe084de2f21aa180b6570a4bdfd968dd081c0df8344e1a4148c16be1b672

Contents?: true

Size: 875 Bytes

Versions: 9

Compression:

Stored size: 875 Bytes

Contents

class Meta

  ####################################################################
  ####################################################################

    # => Table Exists?
    if ActiveRecord::Base.connection.data_source_exists? :nodes

      if classes = Node.where(ref: "meta")

        # => Each Meta model
        classes.each do |klass| #-> "class" is reserved
          meta = klass.val
          self.const_set meta.titleize, Class.new(Node) do
            accepts_nested_attributes_for   :associations
            has_many meta.pluralize.to_sym, through: :associations, source: :associated, source_type: "Meta::" + meta.titleize, class_name: "Meta::" + meta.titleize
          end
        end

      end

    end

  ####################################################################
  ####################################################################

end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
fl-0.3.9 app/models/meta.rb
fl-0.3.8 app/models/meta.rb
fl-0.3.6 app/models/meta.rb
fl-0.3.5 app/models/meta.rb
fl-0.3.4 app/models/meta.rb
fl-0.3.3 app/models/meta.rb
fl-0.3.2 app/models/meta.rb
fl-0.3.1 app/models/meta.rb
fl-0.3.0 app/models/meta.rb