module Schemaless::Indexes::ClassMethods
Schemaless
ActiveRecord indexes
Public Instance Methods
current_indexes()
click to toggle source
Get all indexes in a schemaless way
# File lib/schemaless/ar/indexes.rb, line 38 def current_indexes ::ActiveRecord::Base.connection.indexes(table_name).map do |i| opts = ::Schemaless::Index::VALID_OPTS.reduce({}) do |a, e| i.send(e) ? a.merge(e => i.send(e)) : a end ::Schemaless::Index.new(i.columns, i.name, opts) end end
index(*params)
click to toggle source
index(*)
index :name index [:one, :other] index :name, unique: true
# File lib/schemaless/ar/indexes.rb, line 28 def index(*params) config = params.extract_options! name = config.delete(:name) schemaless_indexes << ::Schemaless::Index.new(params, name, config) end
schemaless_indexes()
click to toggle source
Holder for all fields dynamic
# File lib/schemaless/ar/indexes.rb, line 16 def schemaless_indexes @schemaless_indexes ||= [] end