Module: Rails::Mongoid
Overview
:nodoc:
Defined Under Namespace
Classes: Railtie
Instance Method Summary collapse
-
#create_indexes(pattern) ⇒ Array<String>
Create indexes for each model given the provided pattern and the class is not embedded.
-
#load_models(app) ⇒ Object
Use the application configuration to get every model and require it, so that indexing and inheritance work in both development and production with the same results.
-
#preload_models(app) ⇒ Object
Conditionally calls ‘Rails::Mongoid.load_models(app)` if the `::Mongoid.preload_models` is `true`.
Instance Method Details
#create_indexes(pattern) ⇒ Array<String>
Create indexes for each model given the provided pattern and the class is not embedded.
17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
# File 'lib/rails/mongoid.rb', line 17 def create_indexes(pattern) Dir.glob(pattern).each do |file| logger = Logger.new($stdout) begin model = determine_model(file) if model model.create_indexes logger.info("Generated indexes for #{model}") end rescue => e logger.error("ERROR: #{e.}") end end end |
#load_models(app) ⇒ Object
Use the application configuration to get every model and require it, so that indexing and inheritance work in both development and production with the same results.
40 41 42 43 44 45 46 |
# File 'lib/rails/mongoid.rb', line 40 def load_models(app) app.config.paths["app/models"].each do |path| Dir.glob("#{path}/**/*.rb").sort.each do |file| load_model(file.gsub("#{path}/" , "").gsub(".rb", "")) end end end |