Overview
En esta guía, puedes aprender a especificar las opciones de configuración para una colección en tu aplicación Mongoid.
Configurar opciones de colección
Puedes especificar opciones de configuración para una colección usando la
:collection_options argumento con la macro store_in. El argumento :collection_options acepta cualquier opción de colección que tu driver Ruby y las versiones del servidor MongoDB soporten.
Nota
Para aprender más sobre las opciones de colección disponibles en el driver de Ruby, consulta la guía Base de Datos y Colecciones en la documentación del driver de Ruby.
Las siguientes secciones muestran ejemplos de cómo configurar opciones de colección cuando se usa Mongoid.
Colección de series de tiempo
Las colecciones de series temporales almacenan eficientemente secuencias de mediciones a lo largo de un período de tiempo. El siguiente ejemplo muestra cómo configurar una colección de series temporales:
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 obtener más información sobre las colecciones de series temporales, consulta la guía Colecciones de Series Temporales en el manual de MongoDB Server.
Colección con tamaño fijo
Las colecciones con tamaño fijo tienen un tamaño máximo o un recuento de documentos que les impide crecer más allá de un umbral definido. El siguiente ejemplo muestra cómo configurar una colección con tamaño fijo:
class Blog include Mongoid::Document store_in collection_options: { capped: true, size: 1024 } end
Para aprender más sobre las colecciones con tamaño fijo, consulta la guía Colecciones con tamaño fijo en el manual de MongoDB Server.
Intercalación predeterminada
Las intercalaciones son conjuntos de reglas para comparar cadenas, normalmente en un lenguaje natural en particular. El siguiente ejemplo muestra cómo especificar una intercalación por defecto para usar en una colección:
class Title include Mongoid::Document store_in collection_options: { collation: { locale: 'fr' } } end
Para obtener más información sobre las intercalaciones, consulte la guía de intercalación en el manual de MongoDB Server.
Tarea Rake de gestión de colección
Para aplicar las opciones de colección que especifiques en tu aplicación Mongoid, debes crear explícitamente la colección correspondiente. Para hacerlo, utiliza la tarea db:mongoid:create_collections Rake ejecutando el siguiente comando en tu shell:
rake db:mongoid:create_collections
También puedes ejecutar el comando create_collection sobre un solo modelo en la consola de Rails, como se muestra en el siguiente ejemplo:
Model.create_collection