Module: Mongoid::Composable
- Extended by:
- ActiveSupport::Concern
- Includes:
- ActiveModel::Conversion, ActiveModel::ForbiddenAttributesProtection, ActiveModel::Naming, ActiveModel::Serializers::JSON, ActiveModel::Serializers::Xml, Atomic, Attributes, Changeable, Copyable, Equality, Evolvable, Fields, Indexable, Inspectable, Interceptable, Matchable, Persistable, Relations, Reloadable, Scopable, Selectable, Serializable, Sessions, Shardable, State, Threaded::Lifecycle, Traversable, Validatable
- Included in:
- Document
- Defined in:
- lib/mongoid/composable.rb
Overview
This module provides inclusions of all behaviour in a Mongoid document.
Constant Summary collapse
- MODULES =
[ Atomic, Attributes, Copyable, Changeable, Evolvable, Fields, Indexable, Inspectable, Interceptable, Matchable, Persistable, Relations, Reloadable, Scopable, Serializable, Sessions, Shardable, State, Threaded::Lifecycle, Traversable, Validatable, Equality ]
Constants included from Interceptable
Constants included from Matchable
Constants included from Atomic
Instance Attribute Summary
Attributes included from State
#destroyed, #flagged_for_destroy, #new_record
Attributes included from Relations
Attributes included from Attributes
Class Method Summary collapse
-
.prohibited_methods ⇒ Array<Symbol>
Get a list of methods that would be a bad idea to define as field names or override when including Mongoid::Document.
Methods included from Equality
Methods included from Copyable
Methods included from Interceptable
#callback_executable?, #in_callback_state?, #run_after_callbacks, #run_before_callbacks, #run_callbacks
Methods included from Validatable
#begin_validate, #exit_validate, #performing_validations?, #read_attribute_for_validation, #valid?, #validated?, #validating_with_query?
Methods included from Traversable
#_children, #_root, #_root?, #collect_children, #flag_children_persisted, #hereditary?, #parentize, #remove_child, #reset_persisted_children
Methods included from State
#destroyed?, #flagged_for_destroy?, #new_record?, #persisted?, #pushable?, #settable?, #updateable?
Methods included from Shardable
#shard_key_fields, #shard_key_selector
Methods included from Sessions
clear, #collection, #collection_name, default, disconnect, #mongo_session, with_name
Methods included from Sessions::Options
Methods included from Serializable
Methods included from Selectable
Methods included from Reloadable
Methods included from Relations
#embedded?, #embedded_many?, #embedded_one?, #metadata_name, #referenced_many?, #referenced_one?, #reload_relations
Methods included from Relations::Touchable
Methods included from Relations::Synchronization
#remove_inverse_keys, #syncable?, #synced, #synced?, #update_inverse_keys
Methods included from Relations::Reflections
#reflect_on_all_associations, #reflect_on_association
Methods included from Relations::Macros
Methods included from Relations::Cascading
Methods included from Relations::AutoSave
#__autosaving__, #autosaved?, #changed_for_autosave?, #relation_changed_for_autosave
Methods included from Relations::Accessors
#__build__, #create_relation, #relation_exists?, #reset_relation_criteria, #set_relation
Methods included from Persistable
#atomically, #fail_due_to_callback!, #fail_due_to_validation!
Methods included from Persistable::Unsettable
Methods included from Persistable::Upsertable
Methods included from Persistable::Updatable
#update, #update!, #update_attribute, #update_document
Methods included from Persistable::Settable
Methods included from Persistable::Savable
Methods included from Persistable::Renamable
Methods included from Persistable::Pushable
Methods included from Persistable::Pullable
Methods included from Positional
Methods included from Persistable::Poppable
Methods included from Persistable::Logical
Methods included from Persistable::Incrementable
Methods included from Persistable::Destroyable
Methods included from Persistable::Deletable
Methods included from Persistable::Creatable
Methods included from Matchable
Methods included from Inspectable
Methods included from Fields
#apply_default, #apply_defaults, #apply_post_processed_defaults, #apply_pre_processed_defaults, #attribute_names, #database_field_name, #lazy_settable?, option, options, #using_object_ids?
Methods included from Evolvable
Methods included from Attributes
#assign_attributes, #attribute_present?, #attributes_before_type_cast, #has_attribute?, #has_attribute_before_type_cast?, #read_attribute, #read_attribute_before_type_cast, #remove_attribute, #write_attribute, #write_attributes
Methods included from Attributes::Readonly
Methods included from Attributes::Processing
Methods included from Changeable
#changed, #changed?, #changed_attributes, #changes, #children_changed?, #move_changes, #post_persist, #previous_changes, #remove_change, #setters
Methods included from 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
Class Method Details
.prohibited_methods ⇒ Array<Symbol>
Get a list of methods that would be a bad idea to define as field names or override when including Mongoid::Document.
97 98 99 100 101 |
# File 'lib/mongoid/composable.rb', line 97 def prohibited_methods @prohibited_methods ||= MODULES.flat_map do |mod| mod.instance_methods.map{ |m| m.to_sym } end end |