Módulo: Mongoid::Config

Ampliado por:
Transferible, Configuración, Valores predeterminados, Cifrado, Opciones
Incluye:
DeprecatedOptions
Incluido en:
Config
Definido en:
lib/mongoid/config.rb,
lib/mongoid/config/options.rb,
lib/mongoid/config/defaults.rb,
lib/mongoid/config/encryption.rb,
lib/mongoid/config/environment.rb,
lib/mongoid/config/validators/client.rb,
lib/mongoid/config/validators/option.rb,
lib/mongoid/config/validators/async_query_executor.rb

Overview

Este módulo define todas las opciones de configuración para Mongoid, incluidas las conexiones a la base de datos.

Definido bajo Namespace

Modules: Predeterminados, Opciones obsoletas, cifrado, Entorno, Opciones, Validadores

Colapso delresumen constante

bloqueo =
Mutex (exclusión mutua).Nuevo

Constantes incluidas de Opciones Obsoletas

DeprecatedOptions::OPTIONS

Resumen del método de instancia colapsar

Métodos incluidos de Opciones

valorespredeterminados, nivel deregistro, opción,restablecer, configuración

Métodos incluidos desde por defecto

load_defaults

Métodos incluidos en Cifrado

mapa de esquema de cifrado

Métodos incluidos de Opciones obsoletas

antepuesto

Detalles del método de instancia

#clientesHash

Obtén la configuración del cliente o un objeto vacío.

Ejemplos:

Obtener la configuración de los clientes.

config.clients

Devuelve:

  • (encriptada)

    La configuración de los clientes.



368
369
370
# Archivo 'lib/mongoid/config.rb', línea 368

def clientes
  @clients ||= {}
end

#configself

Retorna el Config singleton, para su uso en el DSL de configuración.

Devuelve:

  • (ser) -

    El singleton Config.



186
187
188
# Archivo 'lib/mongoid/config.rb', línea 186

def config
  sí mismo
end

#¿configurado?verdadero | falso

¿Ha sido configurado Mongoid? Esto verifica que exista al menos una configuración de cliente válida.

Ejemplos:

¿Está configurado Mongoid?

config.configured?

Devuelve:

  • (true | false)

    Si Mongoid está configurado.



197
198
199
# Archivo 'lib/mongoid/config.rb', línea 197

def ¿configurado?
  clientes.key?(por defecto)
end

#connect_to(name, options = { read: { moda: :primario }}) ⇒ objeto

Nota:

Utiliza sólo en entornos de desarrollo o prueba para mayor comodidad.

Conéctese al nombre de base de datos proporcionado en el cliente por defecto.

Ejemplos:

Establezca la base de datos con la que desea conectarse.

config.connect_to("mongoid_test")

Parámetros:

  • Nombre (string)

    El nombre de la base de datos.



209
210
211
212
213
214
215
216
217
# Archivo 'lib/mongoid/config.rb', línea 209

def connect_to(Nombre, opciones = { leer: { moda: :primario }})
  sí mismo.clientes = {
    por defecto: {
      database: Nombre,
      host: [ "localhost:27017" ],
      opciones: opciones
    }
  }
end

#deregister_model(klass) ⇒ Object

Este método forma parte de una API privada. Debe evitarlo si es posible, ya que podría eliminarse o modificarse en el futuro.

Anular el registro de un modelo en la aplicación con Mongoid.

Parámetros:

  • klass (Clase) -

    El modelo para cancelar el registro.



276
277
278
279
280
# Archivo 'lib/mongoid/config.rb', línea 276

def cancelar_registro_modelo(klass)
  CERRAR.sincronizar hacer
    modelos.borrar(klass)
  end
end

#destructive_fieldsarreglo<String>

Devuelve los nombres de campos que podrían causar cosas destructivas si se definen en un Mongoid::Document.

Ejemplos:

Obtener los campos destructivos.

config.destructive_fields

Devuelve:

  • (arreglo<String>)

    Una serie de nombres de campos incorrectos.



226
227
228
# Archivo 'lib/mongoid/config.rb', línea 226

def campos_destructivos
  Compuesto.prohibited_methods
end

#load!(path, environment = nil) ⇒ objeto

Carga la configuración desde un archivo mongoid.yml compatible. Esto se puede usar para una configuración sencilla con frameworks distintos a Rails.

Ejemplos:

Configura Mongoid.

Mongoid.load!("/path/to/mongoid.yml")

Parámetros:

  • ruta (string)

    La ruta al archivo.

  • medio ambiente (Cadena | Símbolo) (predeterminado: nulo)

    El entorno a cargar.



238
239
240
241
242
243
244
245
246
# Archivo 'lib/mongoid/config.rb', línea 238

def ¡cargar!(ruta, medio ambiente = nulo)
  ajustes = Entorno.load_yaml(ruta, medio ambiente)
  si ajustes.¿presente?
    Clientes.Desconectar
    Clientes.borrar
    load_configuration(ajustes)
  end
  ajustes
end

#load_configuration(configuraciones) ⇒ Objeto

A partir de un hash de configuraciones, cargue toda la configuración.

Ejemplos:

Cargue la configuración.

config.load_configuration(settings)

Parámetros:

  • ajustes (encriptada)

    Los ajustes de configuración.



288
289
290
291
292
293
294
# Archivo 'lib/mongoid/config.rb', línea 288

def load_configuration(ajustes)
  configuración = ajustes.con_acceso_indiferente
  sí mismo.opciones = configuración[:options]
  sí mismo.clientes = configuración[cliente]
  Mongo.opciones = configuración[:opciones_del_controlador] || {}
  establecer_niveles_de_registro
end

#modelsArray<Class>

Obtenga todos los modelos en la aplicación: esto es todo lo que incluye Mongoid::Document.

Ejemplos:

Consigue todos los modelos.

config.models

Devuelve:

  • (arreglo<Class>)

    Todos los modelos en la aplicación.



255
256
257
# Archivo 'lib/mongoid/config.rb', línea 255

def modelos
  @models ||= []
end

#opciones=(opciones) ⇒ Objeto

Configura las opciones de configuración. Validará a cada una individualmente.

Ejemplos:

Configura las opciones.

config.options = { raise_not_found_error: true }

Parámetros:

  • opciones (encriptada)

    Las opciones de configuración.



352
353
354
355
356
357
358
359
360
# Archivo 'lib/mongoid/config.rb', línea 352

def opciones=(opciones)
  si opciones
    Validadores::AsyncQueryExecutor.validar(opciones)
    opciones.each_pair hacer |opción, Valor|
      Validadores::Opción.validar(opción)
      enviar("#{opción}=", Valor)
    end
  end
end

#override_client(nombre) ⇒ String | Symbol

Anular el cliente para utilizarlo globalmente.

Ejemplos:

Sobrescriba el cliente globalmente.

config.override_client(:optional)

Parámetros:

  • Nombre (String | Símbolo)

    El nombre del cliente.

Devuelve:

  • (String | Símbolo)

    La anulación global.



316
317
318
# Archivo 'lib/mongoid/config.rb', línea 316

def override_client(Nombre)
  Compacto.anulación del cliente = Nombre ? Nombre.to_s : nulo
end

#override_database(nombre) ⇒ Cadena | Símbolo

Anular la base de datos para utilizarla globalmente.

Ejemplos:

Anular la base de datos globalmente.

config.override_database(:optional)

Parámetros:

  • Nombre (String | Símbolo)

    El nombre de la base de datos.

Devuelve:

  • (String | Símbolo)

    La anulación global.



304
305
306
# Archivo 'lib/mongoid/config.rb', línea 304

def override_database(Nombre)
  Compacto.database_override = Nombre
end

#purge!true

Nota:

Esta es la manera más rápida de descartar todos los datos.

Vaciar todos los datos en todas las colecciones, incluidos los índices.

Ejemplos:

Purgar todos los datos.

Mongoid::Config.purge!

Devuelve:

  • (cierto)

    verdadero.



328
329
330
# Archivo 'lib/mongoid/config.rb', línea 328

def ¡Purge!
  global_client.database.collections.cada(Y:gota) y  true
end

#register_model(klass) ⇒ Object

Registrar un modelo en la aplicación con Mongoid.

Ejemplos:

Registrar un modelo.

config.register_model(Band)

Parámetros:

  • klass (Clase) -

    El modelo a registrar.



265
266
267
268
269
# Archivo 'lib/mongoid/config.rb', línea 265

def modelo de registro(klass)
  CERRAR.sincronizar hacer
    modelos.push(klass) a menos que modelos.incluir?(klass)
  end
end

#running_with_passenger?true | false

Obsoleto.

¿Se está ejecutando la aplicación bajo passenger?

Ejemplos:

¿La aplicación está usando Passenger?

config.running_with_passenger?

Devuelve:

  • (true | false)

    Si la aplicación está implementada en Passenger.



390
391
392
# Archivo 'lib/mongoid/config.rb', línea 390

def ¿corriendo_con_pasajero?
  @running_with_passenger ||= ¿definido?(PhusionPassenger)
end

#time_zoneString

Obtén la zona horaria a utilizar.

Ejemplos:

Obtenga la zona horaria.

Config.time_zone

Devuelve:

  • (string)

    La zona horaria.



378
379
380
# Archivo 'lib/mongoid/config.rb', línea 378

def time_zone
  ¿usar_utc? ? "UTC" : ::Tiempo.zona
end

#truncate!true

Nota:

¡Esto será más lento que la purga!

Trunca todos los datos en todas las colecciones, pero no los índices.

Ejemplos:

Trunca todos los datos de la colección.

Mongoid::Config.truncate!

Devuelve:

  • (cierto)

    verdadero.



340
341
342
343
344
# Archivo 'lib/mongoid/config.rb', línea 340

def ¡truncar!
  global_client.database.collections.cada hacer |Colección|
    Colección.buscar.borrar_varios
  end y  true
end