Join us Sept 17 at .local NYC! Use code WEB50 to save 50% on tickets. Learn more >
MongoDB Event
Menu Docs
Página inicial do Docs
/ / /
Mongoid
/

Integração do Rails

Neste guia, você pode aprender sobre os recursos que são habilitados automaticamente quando você usa o Mongoid em um aplicação Ruby on Rails. Este guia também descreve a funcionalidade relacionada ao Rails que você pode habilitar em seu aplicação.

Você pode configurar as opções específicas do Mongoid e outras opções específicas do ambiente Rails no arquivo principal do aplicação acessando config.mongoid. O gerador mongoid:config cria um inicializador no arquivo config/initializers/mongoid.rb.

Observação

Quaisquer opções definidas em seu arquivo config/mongoid.yml têm precedência sobre as opções definidas em outro lugar. Por esta razão, utilize o mongoid.yml como o local padrão para a configuração Mongoide quando possível.

Para saber mais sobre todas as opções de configuração disponíveis, consulte os guias de Configuração do.

O código abaixo demonstra como criar um logger do Rails acessando config.mongoid:

module MyApplication
class Application < Rails::Application
config.mongoid.logger = Logger.new(STDERR, :warn)
end
end

Para saber mais sobre as configurações de registro, consulte o guia Configuração de registro.

Para configurar a herança de collection única, o Mongoid deve pré-carregar todos os modelos antes de cada solicitação no modo de desenvolvimento. Isso pode tornar seu aplicação lento, portanto, se você não estiver usando nenhuma herança, poderá desativar esse recurso.

O código a seguir demonstra como você pode desativar o pré-carregamento definindo o recurso preload_models como false:

config.mongoid.preload_models = false

Semelhante ao Active Record, o Mongoid configura o Rails para converter automaticamente certas exceções para códigos de status HTTP. A seguinte lista fornece as conversões entre exceções Mongoid e códigos HTTP:

  • Mongoid::Errors::DocumentNotFound: Convertido para 404 Not Found

  • Mongoid::Errors::Validations: Convertido para 422 Unprocessable Content

O Mongoid pode gerar o tempo gasto na execução de comandos do banco de dados para o evento de instrumentação do Rails process_action.action_controller. O Mongoid obtém esses valores por meio do monitoramento de comandos do driver. Seu aplicação registra esse tempo com tempo de visualização, conforme mostrado na saída a seguir:

Completed 200 OK in 2739ms (Views: 12.6ms | MongoDB: 0.2ms)

Esse registro é configurado automaticamente em seu aplicação Rails.

Observação

Cálculo de tempo

O tempo indicado nas entradas de registro é o tempo que a implementação do MongoDB leva para executar as operações do MongoDB, além do tempo necessário para enviar comandos e receber resultados do MongoDB Server. Não inclui o tempo gasto pelo driver e pelo Mongoid para gerar as queries, tipos de conversão ou processar os resultados.

Você pode usar as seguintes tarefas de varredura para o Mongoid ao usar a estrutura do Rails:

  • db:create_indexes: Lê todas as definições de índice dos modelos e tenta criá-las no banco de dados

  • db:remove_indexes: Remove índices para cada modelo

  • db:drop: Solta todas as coleções no banco de dados, exceto as coleções do sistema

  • db:purge: Exclui todos os dados, incluindo índices, do banco de dados

  • db:seed: semeia o banco de dados a partir do arquivo db/seeds.rb

  • db:setup: Cria índices e sementes do banco de dados

As seguintes tarefas de antro existem apenas para fins de dependência de estrutura e não executam nenhuma ação:

  • db:test:prepare

  • db:schema:load

  • db:create

  • db:migrate

Para saber como configurar um novo aplicação Rails que usa Mongoid, consulte o guia Início Rápido - Ruby on Rails.

Para saber como adicionar o Mongoid a um aplicação Rails existente, consulte a seção Aplicativo Rails do guia Adicionar Mongoid a um aplicativo existente.

Voltar

Adicionar Mongoid a um aplicativo existente

Nesta página