Configuração da Coleção
Nesta página
Visão geral
Neste guia, você pode aprender como especificar opções de configuração para uma coleção em seu aplicação Mongoid.
Configurar opções de collection
Você pode especificar opções de configuração para uma collection usando o argumento :collection_options
com a macro store_in
. O argumento :collection_options
aceita qualquer opção de collection aceita pelo driver Ruby e pelas versões do MongoDB Server .
Observação
Você deve criar explicitamente uma coleção para aplicar quaisquer opções de coleção especificadas. Crie sua coleção executando a tarefa Rake de gerenciamento de coleção, conforme mostrado na seção Tarefa Rake de gerenciamento de coleção deste guia.
Para saber mais sobre as opções de collection disponíveis no driver Ruby, consulte o guia de Coleções na documentação do driver Ruby.
As seções a seguir mostram exemplos de como configurar as opções de collection ao usar o Mongoid.
Coleção de séries temporais
As coleções de séries temporais armazenam eficientemente sequências de medições durante um período de tempo. O exemplo a seguir mostra como configurar uma coleção de séries temporais:
class Measurement include Mongoid::Document field :temperature, type: Integer field :timestamp, type: Time store_in collection_options: { time_series: { timeField: "timestamp", granularity: "minutes" }, expire_after: 604800 } end
Para saber mais sobre coleções de séries temporais, consulte o guia Coleções de séries temporais no manual do MongoDB Server .
Coleção limitada
Coleções limitadas têm tamanho máximo ou contagens de documento que as impedem de crescer além de um limite especificado. O exemplo a seguir mostra como configurar uma collection limitada:
class Blog include Mongoid::Document store_in collection_options: { capped: true, size: 1024 } end
Para saber mais sobre coleções limitadas, consulte o guia Coleções limitadas no manual do MongoDB Server .
Agrupamento padrão
Agrupamentos são conjuntos de regras sobre como comparar strings, normalmente em uma linguagem natural específica. O exemplo a seguir mostra como especificar um agrupamento padrão para usar em uma coleção:
class Title include Mongoid::Document store_in collection_options: { collation: { locale: 'fr' } } end
Para saber mais sobre agrupamentos, consulte o guia de Agrupamentos no manual do MongoDB Server .
Tarefa de Rake de Gerenciamento de Collection
Para aplicar as opções de collection especificadas em seu aplicação Mongoid, você deve criar explicitamente a collection correspondente. Para fazer isso, use a tarefa db:mongoid:create_collections
Rake executando o seguinte comando em seu shell:
rake db:mongoid:create_collections
Você também pode executar o comando create_collection
em um único modelo no console do Rails, como mostrado no seguinte exemplo:
Model.create_collection