Módulo: Mongoid::Composable

Ampliado por:
ActiveSupport::Concern
Incluye:
ActiveModel::ForbiddenAttributesProtection, ActiveModel::Model, ActiveModel::Serializers::JSON, Inspectable, Asociación, Atomic, Atributos, Cacheable, Changeable, Clientes, CollectionConfigurable, Copyable, Cifrable, Equality, Evolvable, Campos, Identificable, Indexable, Interceptable, Matchable, Persistable, Recargable, Scopable, SearchIndexable, Selectable, Serializable, Shardable, Stateful, Threaded::Lifecycle, Recorrido, Validatable
Incluido en:
Documento
Definido en:
lib/mongoid/composable.rb

Overview

This module provides inclusions of all behavior in a Mongoid document.

Colapso delresumen constante

MODULES =
[
  Atómico,
  Atributos,
  Copiable,
  Cambiable,
  Evolutivo,
  Campos,
  Indexable,
  Inspeccionable,
  Interceptable,
  Coincidente,
  Persistente,
  Asociación,
  Recargable,
  Scopable,
  Serializable,
  Clientes,
  Clientes::opciones,
  Fragmentable,
  Con estado,
  Almacenable en caché,
  Compacto::Ciclo vital,
  Traversable,
  Validatable,
  Igualdad,
  Asociación::Referenciado::Sincronizable,
  Asociación::Macros,
  ActiveModel::Modelo,
  ActiveModel::validación
]
RESERVED_METHOD_NAMES =

Estos son nombres de métodos definidos en bloques incluidos que pueden entrar en conflicto con nombres de asociación o de campo definidos por el usuario. No estarán en la lista de métodos Module.instance_methods de los que depende el código #prohibited_methods a continuación, por lo que debemos rastrearlos por separado.

Devuelve:

  • (Matriz<Símbolo><Symbol>)

    A list of reserved method names.

[ campo,
  :campos_aliasados,
  localizar_campos,
  :index_specifications,
  :shard_key_fields,
  :nested_attributes,
  :readonly_attributes,
  Opciones de almacenamiento,
  :cascades,
  cíclico,
  :cache_timestamp_format
]

Constantes incluidas en Interceptable

Interceptable::CALLBACKS

Constantes incluidas desde Asociación

Association::MACRO_MAPPING

Constantes incluidas desde Asociación::Dependiente

Asociación::Dependiendo::ESTRATEGIAS

Constantes incluidas desde Perseverante

Persistable::LIST_OPERATIONS

Constantes incluidas de Fields

Campos::Booleano, Campos::IDS, Campos::CLASES_BSON_INVÁLIDAS, Campos::SimboloString, Campos::TRANSLATIONS_SFX, Campos::TYPE_MAPPINGS

Constantes incluidas de Atomic

Atomic::UPDATES

Resumen del atributo de la instancia

Atributos incluidos de Stateful

#destruido, #marcado_para_destruir, #anteriormente_nuevo_registro

Atributos incluidos de Asociación

#_associación

Atributos incluidos desde Atributos

#atributos

Atributos incluidos de Mongoid::Clients::StorageOptions

#remembered_storage_options

Resumen del método de clase colapsar

Métodos incluidos de Equality

#, #==, #eql?

Métodos incluidos en Copyable

#clon

Métodos incluidos de Interceptable

#_mongoid_run_child_after_callbacks, #_mongoid_run_child_before_callbacks, #_mongoid_run_child_callbacks, #_mongoid_run_child_callbacks_with_around, #_mongoid_run_child_callbacks_without_around, #callback_executable?, #in_callback_state?, #pending_callbacks, #pending_callbacks=, #run_after_callbacks, #run_before_callbacks, #run_callbacks, #run_pending_callbacks

Métodos incluidos de Validatable

#begin_validate, #exit_validate, #realizando_validaciones?, #leer_atributo_para_validación, #¿válido?, #validado?, #validado, #validando, #validando_con_consulta?

Métodos incluidos de Traversable

__redefine, #_children, #_descendants, #_parent, #_parent=, #_reset_memoized_descendants!, #_root, #_root?, #collect_children, #collect_descendants, #flag_descendants_persisted, #hereditary?, #parentize, #remove_child, #reset_persisted_descendants

Métodos incluidos en Cacheable

#clave_de_caché

Métodos incluidos de Stateful

#destroyed?, #flagged_for_destroy?, #new_record=, #new_record?, #persisted?, #previously_new_record?, #previously_persisted?, #pushable?, #readonly!, #readonly?, #settable?, #updateable?

Métodos incluidos de Shardable

#shard_key_field_value, #shard_key_fields, #shard_key_selector, #shard_key_selector_in_db

Métodos incluidos de Serializable

#serializable_hash

Métodos incluidos en Seleccionable

#selector_atómico

Métodos incluidos de Recargable

#reload

Métodos incluidos de Asociación

#nombre_de_asociación, #¿incrustado?, #¿incrustado_muchos?, #¿incrustado_uno?, #¿referenciado_muchos?, #¿referenciado_uno?, #recargar_relaciones

Métodos incluidos de Asociación::Reflexiones

#reflect_on_all_association, #reflect_on_association

Métodos incluidos de Association::Macros

#asociaciones

Métodos incluidos de Association::Depending

#aplicar_destruir_dependencias!, definir_dependencia!, ¡validar!

Métodos incluidos de Association::Accessors

#__compilar__, #create_relation, #reset_relation_criteria, #set_relation

Métodos incluidos en Association::Referenced::Syncable

#_syncable?, #_synced, #_synced?, #remove_inverse_keys, #update_inverse_keys

Métodos incluidos de Association::Referenced::CounterCache

define_callbacks!, #reset_counters

Métodos incluidos en Asociación::Referenciado::AutoGuardar

#__autosaving__, #autosaved?, #changed_for_autosave?, define_autosave!

Métodos incluidos de Persistable

#atomically, #fail_due_to_callback!, #fail_due_to_validation!

Métodos incluidos desde Persistable::Unsettable

#deshacer

Métodos incluidos de Persistable::Upsertable

#upsert

Métodos incluidos de Persistable::Updatable

#update, #update!, #update_attribute

Métodos incluidos en Persistable::Settable

#set

Métodos incluidos en Persistable::Savable

#save, #save!

Métodos incluidos de Persistable::Renamable

#rename

Métodos incluidos de Persistable::Pushable

#añadir_al_conjunto, #empujar

Métodos incluidos de Persistable::Pullable

#pull, #pull_all

Métodos incluidos desde Positional

#posicionalmente

Métodos incluidos de Persistable::Poppable

#pop

Métodos incluidos de Persistable::Multipliable

#mul

Métodos incluidos de Persistable::Minable

#set_min

Métodos incluidos de Persistable::Maxable

#set_max

Métodos incluidos de Persistable::Logical

#bit

Métodos incluidos desde Persistable::Incrementable

#inc

Métodos incluidos desde Persistable::Destroyable

#destruir, #destruir!

Métodos incluidos de Persistable::Deletable

borrar

Métodos incluidos de Persistable::Creatable

#insert

Métodos incluidos de Matchable

#_coincidencias?

Métodos incluidos de Campos

#apply_default, #apply_defaults, #apply_post_processed_defaults, #apply_pre_processed_defaults, #attribute_names, database_field_name, #database_field_name, #dot_dollar_field?, #lazy_settable?, option, options, traverse_association_tree, #using_object_ids?, #validate_writable_field_name!

Métodos incluidos de Evolvable

#__evolve_object_id__

Métodos incluidos en Atributos

#assign_attributes, #attribute_missing?, #attribute_present?, #attributes_before_type_cast, #has_attribute?, #has_attribute_before_type_cast?, #process_raw_attribute, #read_attribute, #read_attribute_before_type_cast, #remove_attribute, #typed_attributes, #write_attribute, #write_attributes

Métodos incluidos de Attributes::Readonly

#attribute_writable?

Métodos incluidos de Atributos::Procesamiento

#process_attributes

Métodos incluidos de clientes

borrar, clientes, predeterminado, desconectar, reconectar, establecer, con_nombre

Métodos incluidos de Mongoid::Clients::Sessions

incluido

Métodos incluidos de Mongoid::Clients::Options

#colección, #nombre_de_colección, #cliente_mongo, #contexto_de_persistencia, #contexto_de_persistencia?, #con

Métodos incluidos en Mongoid::Clients::StorageOptions

#remember_storage_options!, #storage_options

Métodos incluidos en Changeable

#atributo_antes_del_último_guardado, #cambiado, #¿cambiado?, #atributos_cambiados, #cambios, #hijos_cambiados?, #hijos_pueden_haber_cambiado!, #mover_cambios, #persistencia_posterior, #cambios_anteriores, #eliminar_cambio, #cambio_guardado_en_atributo, #cambio_guardado_en_atributo?, #establecedores, #¿se_guardará_el_cambio_en_atributo?

Métodos incluidos de Atomic

#add_atomic_pull, #add_atomic_unset, #atomic_array_add_to_sets, #atomic_array_pulls, #atomic_array_pushes, #atomic_attribute_name, #atomic_delete_modifier, #atomic_insert_modifier, #atomic_path, #atomic_paths, #atomic_position, #atomic_pulls, #atomic_pushes, #atomic_sets, #atomic_unsets, #atomic_updates, #delayed_atomic_pulls, #delayed_atomic_sets, #delayed_atomic_unsets, #flag_as_destroyed, #flagged_destroys, #process_flagged_destroys

Detalles del método de clase

.prohibited_methodsArray<Symbol>

Obtenga una lista de métodos que sería mala idea definir como nombres de campo u sobrescribir cuando incluya Mongoid::Documento.

Ejemplos:

Algo malo!

Mongoid::Components.prohibited_methods

Devuelve:

  • (Array<Symbol>)


130
131
132
133
134
# Archivo 'lib/mongoid/composable.rb', línea 130

def prohibited_methods
  @prohibited_methods ||= MODULES.flat_map hacer |mod|
    mod.métodos de instancia.map(Y:to_sym)
  end + RESERVED_METHOD_NAMES
end