Module: ActiveRecord
- Extended by:
- ActiveSupport::Autoload
- Defined in:
- activerecord/lib/active_record.rb,
activerecord/lib/active_record/base.rb,
activerecord/lib/active_record/core.rb,
activerecord/lib/active_record/enum.rb,
activerecord/lib/active_record/type.rb,
activerecord/lib/active_record/store.rb,
activerecord/lib/active_record/errors.rb,
activerecord/lib/active_record/result.rb,
activerecord/lib/active_record/schema.rb,
activerecord/lib/active_record/explain.rb,
activerecord/lib/active_record/promise.rb,
activerecord/lib/active_record/railtie.rb,
activerecord/lib/active_record/scoping.rb,
activerecord/lib/active_record/version.rb,
activerecord/lib/active_record/fixtures.rb,
activerecord/lib/active_record/querying.rb,
activerecord/lib/active_record/callbacks.rb,
activerecord/lib/active_record/migration.rb,
activerecord/lib/active_record/signed_id.rb,
activerecord/lib/active_record/timestamp.rb,
activerecord/lib/active_record/token_for.rb,
activerecord/lib/active_record/type/date.rb,
activerecord/lib/active_record/type/json.rb,
activerecord/lib/active_record/type/text.rb,
activerecord/lib/active_record/type/time.rb,
activerecord/lib/active_record/attributes.rb,
activerecord/lib/active_record/deprecator.rb,
activerecord/lib/active_record/encryption.rb,
activerecord/lib/active_record/insert_all.rb,
activerecord/lib/active_record/query_logs.rb,
activerecord/lib/active_record/reflection.rb,
activerecord/lib/active_record/suppressor.rb,
activerecord/lib/active_record/coders/json.rb,
activerecord/lib/active_record/gem_version.rb,
activerecord/lib/active_record/inheritance.rb,
activerecord/lib/active_record/integration.rb,
activerecord/lib/active_record/marshalling.rb,
activerecord/lib/active_record/no_touching.rb,
activerecord/lib/active_record/persistence.rb,
activerecord/lib/active_record/query_cache.rb,
activerecord/lib/active_record/touch_later.rb,
activerecord/lib/active_record/translation.rb,
activerecord/lib/active_record/type_caster.rb,
activerecord/lib/active_record/validations.rb,
activerecord/lib/active_record/aggregations.rb,
activerecord/lib/active_record/associations.rb,
activerecord/lib/active_record/model_schema.rb,
activerecord/lib/active_record/sanitization.rb,
activerecord/lib/active_record/secure_token.rb,
activerecord/lib/active_record/transactions.rb,
activerecord/lib/active_record/counter_cache.rb,
activerecord/lib/active_record/future_result.rb,
activerecord/lib/active_record/normalization.rb,
activerecord/lib/active_record/schema_dumper.rb,
activerecord/lib/active_record/scoping/named.rb,
activerecord/lib/active_record/serialization.rb,
activerecord/lib/active_record/test_fixtures.rb,
activerecord/lib/active_record/type/type_map.rb,
activerecord/lib/active_record/delegated_type.rb,
activerecord/lib/active_record/encryption/key.rb,
activerecord/lib/active_record/log_subscriber.rb,
activerecord/lib/active_record/table_metadata.rb,
activerecord/lib/active_record/test_databases.rb,
activerecord/lib/active_record/type/date_time.rb,
activerecord/lib/active_record/relation/merger.rb,
activerecord/lib/active_record/scoping/default.rb,
activerecord/lib/active_record/secure_password.rb,
activerecord/lib/active_record/statement_cache.rb,
activerecord/lib/active_record/type/serialized.rb,
activerecord/lib/active_record/type_caster/map.rb,
activerecord/lib/active_record/dynamic_matchers.rb,
activerecord/lib/active_record/explain_registry.rb,
activerecord/lib/active_record/fixture_set/file.rb,
activerecord/lib/active_record/relation/batches.rb,
activerecord/lib/active_record/runtime_registry.rb,
activerecord/lib/active_record/schema_migration.rb,
activerecord/lib/rails/generators/active_record.rb,
activerecord/lib/active_record/attribute_methods.rb,
activerecord/lib/active_record/encryption/cipher.rb,
activerecord/lib/active_record/encryption/config.rb,
activerecord/lib/active_record/encryption/errors.rb,
activerecord/lib/active_record/encryption/scheme.rb,
activerecord/lib/active_record/internal_metadata.rb,
activerecord/lib/active_record/nested_attributes.rb,
activerecord/lib/active_record/coders/yaml_column.rb,
activerecord/lib/active_record/encryption/context.rb,
activerecord/lib/active_record/encryption/message.rb,
activerecord/lib/active_record/explain_subscriber.rb,
activerecord/lib/active_record/locking/optimistic.rb,
activerecord/lib/active_record/validations/length.rb,
activerecord/lib/active_record/connection_adapters.rb,
activerecord/lib/active_record/connection_handling.rb,
activerecord/lib/active_record/encryption/contexts.rb,
activerecord/lib/active_record/legacy_yaml_adapter.rb,
activerecord/lib/active_record/locking/pessimistic.rb,
activerecord/lib/active_record/readonly_attributes.rb,
activerecord/lib/active_record/relation/delegation.rb,
activerecord/lib/active_record/validations/absence.rb,
activerecord/lib/active_record/association_relation.rb,
activerecord/lib/active_record/attribute_assignment.rb,
activerecord/lib/active_record/autosave_association.rb,
activerecord/lib/active_record/encryption/encryptor.rb,
activerecord/lib/active_record/migration/join_table.rb,
activerecord/lib/active_record/query_logs_formatter.rb,
activerecord/lib/active_record/railties/job_runtime.rb,
activerecord/lib/active_record/relation/from_clause.rb,
activerecord/lib/active_record/tasks/database_tasks.rb,
activerecord/lib/active_record/validations/presence.rb,
activerecord/lib/active_record/encryption/properties.rb,
activerecord/lib/active_record/fixture_set/table_row.rb,
activerecord/lib/active_record/relation/calculations.rb,
activerecord/lib/active_record/relation/where_clause.rb,
activerecord/lib/active_record/type/unsigned_integer.rb,
activerecord/lib/active_record/associations/preloader.rb,
activerecord/lib/active_record/attribute_methods/read.rb,
activerecord/lib/active_record/fixture_set/table_rows.rb,
activerecord/lib/active_record/relation/query_methods.rb,
activerecord/lib/active_record/relation/spawn_methods.rb,
activerecord/lib/active_record/type/internal/timezone.rb,
activerecord/lib/active_record/type_caster/connection.rb,
activerecord/lib/active_record/validations/associated.rb,
activerecord/lib/active_record/validations/uniqueness.rb,
activerecord/lib/active_record/attribute_methods/dirty.rb,
activerecord/lib/active_record/attribute_methods/query.rb,
activerecord/lib/active_record/attribute_methods/write.rb,
activerecord/lib/active_record/database_configurations.rb,
activerecord/lib/active_record/encryption/configurable.rb,
activerecord/lib/active_record/encryption/key_provider.rb,
activerecord/lib/active_record/migration/compatibility.rb,
activerecord/lib/active_record/relation/finder_methods.rb,
activerecord/lib/active_record/associations/association.rb,
activerecord/lib/active_record/coders/column_serializer.rb,
activerecord/lib/active_record/encryption/key_generator.rb,
activerecord/lib/active_record/relation/query_attribute.rb,
activerecord/lib/active_record/validations/numericality.rb,
activerecord/lib/active_record/encryption/null_encryptor.rb,
activerecord/lib/active_record/middleware/shard_selector.rb,
activerecord/lib/active_record/type/hash_lookup_type_map.rb,
activerecord/lib/active_record/associations/alias_tracker.rb,
activerecord/lib/active_record/connection_adapters/column.rb,
activerecord/lib/active_record/fixture_set/model_metadata.rb,
activerecord/lib/active_record/migration/command_recorder.rb,
activerecord/lib/active_record/migration/default_strategy.rb,
activerecord/lib/active_record/relation/predicate_builder.rb,
activerecord/lib/active_record/tasks/mysql_database_tasks.rb,
activerecord/lib/active_record/type/decimal_without_scale.rb,
activerecord/lib/rails/generators/active_record/migration.rb,
activerecord/lib/active_record/tasks/sqlite_database_tasks.rb,
activerecord/lib/active_record/associations/join_dependency.rb,
activerecord/lib/active_record/associations/preloader/batch.rb,
activerecord/lib/active_record/asynchronous_queries_tracker.rb,
activerecord/lib/active_record/encryption/cipher/aes256_gcm.rb,
activerecord/lib/active_record/middleware/database_selector.rb,
activerecord/lib/active_record/migration/execution_strategy.rb,
activerecord/lib/active_record/associations/collection_proxy.rb,
activerecord/lib/active_record/associations/preloader/branch.rb,
activerecord/lib/active_record/attribute_methods/primary_key.rb,
activerecord/lib/active_record/destroy_association_async_job.rb,
activerecord/lib/active_record/encryption/encryptable_record.rb,
activerecord/lib/active_record/encryption/encrypted_fixtures.rb,
activerecord/lib/active_record/encryption/message_serializer.rb,
activerecord/lib/active_record/relation/record_fetch_warning.rb,
activerecord/lib/active_record/associations/association_scope.rb,
activerecord/lib/active_record/type/adapter_specific_registry.rb,
activerecord/lib/active_record/attribute_methods/serialization.rb,
activerecord/lib/active_record/connection_adapters/pool_config.rb,
activerecord/lib/active_record/tasks/postgresql_database_tasks.rb,
activerecord/lib/active_record/associations/has_one_association.rb,
activerecord/lib/active_record/associations/through_association.rb,
activerecord/lib/active_record/connection_adapters/deduplicable.rb,
activerecord/lib/active_record/connection_adapters/mysql/column.rb,
activerecord/lib/active_record/connection_adapters/pool_manager.rb,
activerecord/lib/active_record/connection_adapters/schema_cache.rb,
activerecord/lib/active_record/associations/has_many_association.rb,
activerecord/lib/active_record/associations/singular_association.rb,
activerecord/lib/active_record/connection_adapters/mysql/quoting.rb,
activerecord/lib/active_record/relation/batches/batch_enumerator.rb,
activerecord/lib/active_record/associations/preloader/association.rb,
activerecord/lib/active_record/attribute_methods/before_type_cast.rb,
activerecord/lib/active_record/connection_adapters/postgresql/oid.rb,
activerecord/lib/active_record/connection_adapters/sqlite3/column.rb,
activerecord/lib/active_record/connection_adapters/statement_pool.rb,
activerecord/lib/active_record/database_configurations/url_config.rb,
activerecord/lib/active_record/disable_joins_association_relation.rb,
activerecord/lib/active_record/associations/belongs_to_association.rb,
activerecord/lib/active_record/associations/collection_association.rb,
activerecord/lib/active_record/connection_adapters/sqlite3/quoting.rb,
activerecord/lib/active_record/database_configurations/hash_config.rb,
activerecord/lib/active_record/encryption/encrypted_attribute_type.rb,
activerecord/lib/active_record/encryption/read_only_null_encryptor.rb,
activerecord/lib/active_record/connection_adapters/abstract/quoting.rb,
activerecord/lib/active_record/connection_adapters/abstract_adapter.rb,
activerecord/lib/active_record/connection_adapters/postgresql/utils.rb,
activerecord/lib/active_record/encryption/encrypting_only_encryptor.rb,
activerecord/lib/active_record/connection_adapters/postgresql/column.rb,
activerecord/lib/active_record/connection_adapters/sql_type_metadata.rb,
activerecord/lib/active_record/encryption/deterministic_key_provider.rb,
activerecord/lib/active_record/middleware/database_selector/resolver.rb,
activerecord/lib/active_record/associations/join_dependency/join_base.rb,
activerecord/lib/active_record/associations/join_dependency/join_part.rb,
activerecord/lib/active_record/attribute_methods/time_zone_conversion.rb,
activerecord/lib/active_record/connection_adapters/postgresql/oid/bit.rb,
activerecord/lib/active_record/connection_adapters/postgresql/oid/oid.rb,
activerecord/lib/active_record/connection_adapters/postgresql/oid/xml.rb,
activerecord/lib/active_record/connection_adapters/postgresql/quoting.rb,
activerecord/lib/active_record/encryption/derived_secret_key_provider.rb,
activerecord/lib/rails/generators/active_record/model/model_generator.rb,
activerecord/lib/active_record/connection_adapters/abstract/savepoints.rb,
activerecord/lib/active_record/connection_adapters/mysql/schema_dumper.rb,
activerecord/lib/active_record/connection_adapters/mysql/type_metadata.rb,
activerecord/lib/active_record/connection_adapters/postgresql/oid/cidr.rb,
activerecord/lib/active_record/connection_adapters/postgresql/oid/date.rb,
activerecord/lib/active_record/connection_adapters/postgresql/oid/enum.rb,
activerecord/lib/active_record/connection_adapters/postgresql/oid/inet.rb,
activerecord/lib/active_record/connection_adapters/postgresql/oid/uuid.rb,
activerecord/lib/active_record/database_configurations/database_config.rb,
activerecord/lib/active_record/associations/has_one_through_association.rb,
activerecord/lib/active_record/connection_adapters/abstract/query_cache.rb,
activerecord/lib/active_record/connection_adapters/abstract/transaction.rb,
activerecord/lib/active_record/connection_adapters/postgresql/oid/array.rb,
activerecord/lib/active_record/connection_adapters/postgresql/oid/bytea.rb,
activerecord/lib/active_record/connection_adapters/postgresql/oid/jsonb.rb,
activerecord/lib/active_record/connection_adapters/postgresql/oid/money.rb,
activerecord/lib/active_record/connection_adapters/postgresql/oid/point.rb,
activerecord/lib/active_record/connection_adapters/postgresql/oid/range.rb,
activerecord/lib/active_record/relation/predicate_builder/array_handler.rb,
activerecord/lib/active_record/relation/predicate_builder/range_handler.rb,
activerecord/lib/active_record/associations/has_many_through_association.rb,
activerecord/lib/active_record/connection_adapters/mysql/schema_creation.rb,
activerecord/lib/active_record/connection_adapters/postgresql/oid/hstore.rb,
activerecord/lib/active_record/connection_adapters/postgresql/oid/vector.rb,
activerecord/lib/active_record/connection_adapters/sqlite3/schema_dumper.rb,
activerecord/lib/active_record/associations/preloader/through_association.rb,
activerecord/lib/active_record/connection_adapters/abstract/schema_dumper.rb,
activerecord/lib/active_record/connection_adapters/abstract_mysql_adapter.rb,
activerecord/lib/active_record/connection_adapters/postgresql/oid/decimal.rb,
activerecord/lib/active_record/connection_adapters/postgresql/oid/macaddr.rb,
activerecord/lib/active_record/connection_adapters/mysql/schema_statements.rb,
activerecord/lib/active_record/connection_adapters/postgresql/oid/interval.rb,
activerecord/lib/active_record/connection_adapters/sqlite3/schema_creation.rb,
activerecord/lib/active_record/encryption/envelope_encryption_key_provider.rb,
activerecord/lib/active_record/relation/predicate_builder/relation_handler.rb,
activerecord/lib/active_record/associations/disable_joins_association_scope.rb,
activerecord/lib/active_record/connection_adapters/abstract/connection_pool.rb,
activerecord/lib/active_record/connection_adapters/abstract/database_limits.rb,
activerecord/lib/active_record/connection_adapters/abstract/schema_creation.rb,
activerecord/lib/active_record/connection_adapters/mysql/schema_definitions.rb,
activerecord/lib/active_record/connection_adapters/postgresql/oid/date_time.rb,
activerecord/lib/active_record/connection_adapters/postgresql/oid/timestamp.rb,
activerecord/lib/active_record/connection_adapters/postgresql/schema_dumper.rb,
activerecord/lib/active_record/connection_adapters/postgresql/type_metadata.rb,
activerecord/lib/rails/generators/active_record/multi_db/multi_db_generator.rb,
activerecord/lib/active_record/associations/join_dependency/join_association.rb,
activerecord/lib/active_record/connection_adapters/mysql/database_statements.rb,
activerecord/lib/active_record/connection_adapters/sqlite3/schema_statements.rb,
activerecord/lib/active_record/middleware/database_selector/resolver/session.rb,
activerecord/lib/active_record/connection_adapters/abstract/schema_statements.rb,
activerecord/lib/active_record/connection_adapters/postgresql/oid/bit_varying.rb,
activerecord/lib/active_record/connection_adapters/postgresql/schema_creation.rb,
activerecord/lib/active_record/connection_adapters/sqlite3/schema_definitions.rb,
activerecord/lib/rails/generators/active_record/migration/migration_generator.rb,
activerecord/lib/active_record/associations/belongs_to_polymorphic_association.rb,
activerecord/lib/active_record/connection_adapters/abstract/connection_handler.rb,
activerecord/lib/active_record/connection_adapters/abstract/schema_definitions.rb,
activerecord/lib/active_record/connection_adapters/postgresql/oid/legacy_point.rb,
activerecord/lib/active_record/connection_adapters/sqlite3/database_statements.rb,
activerecord/lib/active_record/database_configurations/connection_url_resolver.rb,
activerecord/lib/active_record/relation/predicate_builder/basic_object_handler.rb,
activerecord/lib/active_record/connection_adapters/abstract/database_statements.rb,
activerecord/lib/active_record/connection_adapters/mysql/explain_pretty_printer.rb,
activerecord/lib/active_record/connection_adapters/postgresql/schema_statements.rb,
activerecord/lib/active_record/connection_adapters/postgresql/schema_definitions.rb,
activerecord/lib/active_record/connection_adapters/abstract/connection_pool/queue.rb,
activerecord/lib/active_record/connection_adapters/postgresql/database_statements.rb,
activerecord/lib/active_record/connection_adapters/sqlite3/explain_pretty_printer.rb,
activerecord/lib/active_record/relation/predicate_builder/association_query_value.rb,
activerecord/lib/active_record/relation/predicate_builder/polymorphic_array_value.rb,
activerecord/lib/active_record/connection_adapters/abstract/connection_pool/reaper.rb,
activerecord/lib/active_record/connection_adapters/postgresql/referential_integrity.rb,
activerecord/lib/active_record/connection_adapters/postgresql/explain_pretty_printer.rb,
activerecord/lib/active_record/connection_adapters/postgresql/oid/specialized_string.rb,
activerecord/lib/active_record/encryption/extended_deterministic_uniqueness_validator.rb,
activerecord/lib/active_record/connection_adapters/postgresql/oid/type_map_initializer.rb,
activerecord/lib/active_record/connection_adapters/postgresql/oid/timestamp_with_time_zone.rb,
activerecord/lib/rails/generators/active_record/application_record/application_record_generator.rb
Overview
:nodoc:
Defined Under Namespace
Modules: Aggregations, Associations, AttributeAssignment, AttributeMethods, Attributes, AutosaveAssociation, Batches, Calculations, Callbacks, Coders, ConnectionAdapters, ConnectionHandling, Core, CounterCache, DelegatedType, Delegation, DynamicMatchers, Encryption, Enum, Explain, FinderMethods, Generators, Inheritance, Integration, LegacyYamlAdapter, Locking, Marshalling, Middleware, ModelSchema, NestedAttributes, NoTouching, Normalization, Persistence, QueryLogs, QueryMethods, Querying, Railties, ReadonlyAttributes, Reflection, RuntimeRegistry, Sanitization, Scoping, SecurePassword, SecureToken, Serialization, SignedId, SpawnMethods, Store, Suppressor, Tasks, TestDatabases, TestFixtures, Timestamp, TokenFor, TouchLater, Transactions, Translation, Type, TypeCaster, VERSION, Validations Classes: ActiveRecordError, AdapterNotFound, AdapterNotSpecified, AdapterTimeout, AmbiguousSourceReflectionForThroughAssociation, AssociationNotFoundError, AssociationRelation, AssociationTypeMismatch, AsynchronousQueriesTracker, AsynchronousQueryInsideTransactionError, AttributeAssignmentError, Base, ConcurrentMigrationError, ConfigurationError, ConnectionFailed, ConnectionNotEstablished, ConnectionTimeoutError, DangerousAttributeError, DatabaseAlreadyExists, DatabaseConfigurations, DatabaseConnectionError, Deadlocked, DeleteRestrictionError, DestroyAssociationAsyncError, DestroyAssociationAsyncJob, DisableJoinsAssociationRelation, DuplicateMigrationNameError, DuplicateMigrationVersionError, EagerLoadPolymorphicError, EnvironmentMismatchError, EnvironmentStorageError, ExclusiveConnectionTimeoutError, ExplainRegistry, ExplainSubscriber, Fixture, FixtureClassNotFound, FixtureSet, FutureResult, HasManyThroughAssociationNotFoundError, HasManyThroughAssociationPointlessSourceTypeError, HasManyThroughAssociationPolymorphicSourceError, HasManyThroughAssociationPolymorphicThroughError, HasManyThroughCantAssociateThroughHasOneOrManyReflection, HasManyThroughNestedAssociationsAreReadonly, HasManyThroughOrderError, HasManyThroughSourceAssociationNotFoundError, HasOneAssociationPolymorphicThroughError, HasOneThroughCantAssociateThroughCollection, HasOneThroughCantAssociateThroughHasOneOrManyReflection, HasOneThroughNestedAssociationsAreReadonly, IllegalMigrationNameError, ImmutableRelation, InsertAll, InternalMetadata, InvalidForeignKey, InverseOfAssociationNotFoundError, InverseOfAssociationRecursiveError, IrreversibleMigration, IrreversibleOrderError, LockWaitTimeout, LogSubscriber, Migration, MigrationContext, MigrationError, MigrationProxy, Migrator, MismatchedForeignKey, MultiparameterAssignmentErrors, NoDatabaseError, NoEnvironmentInSchemaError, NotNullViolation, PendingMigrationError, Point, PredicateBuilder, PreparedStatementCacheExpired, PreparedStatementInvalid, Promise, ProtectedEnvironmentError, QueryAborted, QueryCache, QueryCanceled, Railtie, RangeError, ReadOnlyError, ReadOnlyRecord, ReadonlyAttributeError, RecordInvalid, RecordNotDestroyed, RecordNotFound, RecordNotSaved, RecordNotUnique, Relation, Result, Rollback, SQLWarning, Schema, SchemaDumper, SchemaMigration, SerializationFailure, SerializationTypeMismatch, SoleRecordExceeded, StaleObjectError, StatementCache, StatementInvalid, StatementTimeout, StrictLoadingViolationError, SubclassNotFound, TableMetadata, TableNotSpecified, ThroughCantAssociateThroughHasOneOrManyReflection, ThroughNestedAssociationsAreReadonly, TransactionIsolationError, TransactionRollbackError, TypeConflictError, UnknownAttributeReference, UnknownMigrationVersionError, UnknownPrimaryKey, ValueTooLong, WrappedDatabaseException
Constant Summary collapse
- DeprecatedActiveJobRequiredError =
:nodoc:
Class.new(ActiveRecordError)
- UnknownAttributeError =
Raised when unknown attributes are supplied via mass assignment.
ActiveModel::UnknownAttributeError
Instance Attribute Summary collapse
-
#action_on_strict_loading_violation ⇒ Object
:singleton-method: Set the application to log or raise when an association violates strict loading.
-
#allow_deprecated_singular_associations_name ⇒ Object
:singleton-method: If true, Rails will continue allowing plural association names in where clauses on singular associations This behavior will be removed in Rails 7.2.
-
#application_record_class ⇒ Object
Returns the value of attribute application_record_class.
-
#async_query_executor ⇒ Object
Sets the async_query_executor for an application.
-
#before_committed_on_all_records ⇒ Object
Returns the value of attribute before_committed_on_all_records.
-
#belongs_to_required_validates_foreign_key ⇒ Object
Returns the value of attribute belongs_to_required_validates_foreign_key.
-
#db_warnings_action ⇒ Object
readonly
The action to take when database query produces warning.
-
#db_warnings_ignore ⇒ Object
Specify allowlist of database warnings.
-
#default_timezone ⇒ Object
readonly
Returns the value of attribute default_timezone.
-
#dump_schema_after_migration ⇒ Object
:singleton-method: Specify whether schema dump should happen at the end of the bin/rails db:migrate command.
-
#dump_schemas ⇒ Object
:singleton-method: Specifies which database schemas to dump when calling db:schema:dump.
-
#error_on_ignored_order ⇒ Object
:singleton-method: Specifies if an error should be raised if the query has an order being ignored when doing batch queries.
-
#index_nested_attribute_errors ⇒ Object
Returns the value of attribute index_nested_attribute_errors.
-
#lazily_load_schema_cache ⇒ Object
Lazily load the schema cache.
-
#maintain_test_schema ⇒ Object
Returns the value of attribute maintain_test_schema.
-
#migration_strategy ⇒ Object
:singleton-method: Specify strategy to use for executing migrations.
-
#query_transformers ⇒ Object
Returns the value of attribute query_transformers.
-
#queues ⇒ Object
:singleton-method:.
-
#raise_int_wider_than_64bit ⇒ Object
:singleton-method: Application configurable boolean that denotes whether or not to raise an exception when the PostgreSQLAdapter is provided with an integer that is wider than signed 64bit representation.
-
#raise_on_assign_to_attr_readonly ⇒ Object
Returns the value of attribute raise_on_assign_to_attr_readonly.
-
#reading_role ⇒ Object
Returns the value of attribute reading_role.
-
#run_after_transaction_callbacks_in_order_defined ⇒ Object
Returns the value of attribute run_after_transaction_callbacks_in_order_defined.
-
#schema_cache_ignored_tables ⇒ Object
A list of tables or regex’s to match tables to ignore when dumping the schema cache.
-
#schema_format ⇒ Object
:singleton-method: Specifies the format to use when dumping the database schema with Rails’ Rakefile.
-
#timestamped_migrations ⇒ Object
:singleton-method: Specify whether or not to use timestamps for migration versions.
-
#use_yaml_unsafe_load ⇒ Object
:singleton-method: Application configurable boolean that instructs the YAML Coder to use an unsafe load if set to true.
-
#verbose_query_logs ⇒ Object
:singleton-method:.
-
#verify_foreign_keys_for_fixtures ⇒ Object
:singleton-method: If true, Rails will verify all foreign keys in the database after loading fixtures.
-
#warn_on_records_fetched_greater_than ⇒ Object
:singleton-method: Specify a threshold for the size of query result sets.
-
#writing_role ⇒ Object
Returns the value of attribute writing_role.
-
#yaml_column_permitted_classes ⇒ Object
:singleton-method: Application configurable array that provides additional permitted classes to Psych safe_load in the YAML Coder.
Class Method Summary collapse
- .db_warnings_action=(action) ⇒ Object
-
.default_timezone=(default_timezone) ⇒ Object
Determines whether to use Time.utc (using :utc) or Time.local (using :local) when pulling dates and times from the database.
-
.deprecator ⇒ Object
:nodoc:.
- .eager_load! ⇒ Object
-
.gem_version ⇒ Object
Returns the currently loaded version of Active Record as a
Gem::Version
. -
.global_executor_concurrency ⇒ Object
:nodoc:.
-
.global_executor_concurrency=(global_executor_concurrency) ⇒ Object
Set the
global_executor_concurrency
. -
.global_thread_pool_async_query_executor ⇒ Object
:nodoc:.
- .legacy_connection_handling=(_) ⇒ Object
- .marshalling_format_version ⇒ Object
- .marshalling_format_version=(value) ⇒ Object
- .suppress_multiple_database_warning ⇒ Object
- .suppress_multiple_database_warning=(value) ⇒ Object
-
.version ⇒ Object
Returns the currently loaded version of Active Record as a
Gem::Version
.
Methods included from ActiveSupport::Autoload
autoload, autoload_at, autoload_under, eager_autoload, eager_load!, extended
Methods included from ActiveSupport::Deprecation::DeprecatedConstantAccessor
Instance Attribute Details
#action_on_strict_loading_violation ⇒ Object
:singleton-method: Set the application to log or raise when an association violates strict loading. Defaults to :raise.
335 336 337 |
# File 'activerecord/lib/active_record.rb', line 335 def action_on_strict_loading_violation @action_on_strict_loading_violation end |
#allow_deprecated_singular_associations_name ⇒ Object
:singleton-method: If true, Rails will continue allowing plural association names in where clauses on singular associations This behavior will be removed in Rails 7.2.
415 416 417 |
# File 'activerecord/lib/active_record.rb', line 415 def allow_deprecated_singular_associations_name @allow_deprecated_singular_associations_name end |
#application_record_class ⇒ Object
Returns the value of attribute application_record_class
328 329 330 |
# File 'activerecord/lib/active_record.rb', line 328 def application_record_class @application_record_class end |
#async_query_executor ⇒ Object
Sets the async_query_executor for an application. By default the thread pool executor set to nil
which will not run queries in the background. Applications must configure a thread pool executor to use this feature. Options are:
* nil - Does not initialize a thread pool executor. Any async calls will be
run in the foreground.
* :global_thread_pool - Initializes a single +Concurrent::ThreadPoolExecutor+
that uses the +async_query_concurrency+ for the +max_threads+ value.
* :multi_thread_pool - Initializes a +Concurrent::ThreadPoolExecutor+ for each
database connection. The initializer values are defined in the configuration hash.
259 260 261 |
# File 'activerecord/lib/active_record.rb', line 259 def async_query_executor @async_query_executor end |
#before_committed_on_all_records ⇒ Object
Returns the value of attribute before_committed_on_all_records
313 314 315 |
# File 'activerecord/lib/active_record.rb', line 313 def before_committed_on_all_records @before_committed_on_all_records end |
#belongs_to_required_validates_foreign_key ⇒ Object
Returns the value of attribute belongs_to_required_validates_foreign_key
310 311 312 |
# File 'activerecord/lib/active_record.rb', line 310 def belongs_to_required_validates_foreign_key @belongs_to_required_validates_foreign_key end |
#db_warnings_action ⇒ Object (readonly)
The action to take when database query produces warning. Must be one of :ignore, :log, :raise, :report, or a custom proc. The default is :ignore.
205 206 207 |
# File 'activerecord/lib/active_record.rb', line 205 def db_warnings_action @db_warnings_action end |
#db_warnings_ignore ⇒ Object
Specify allowlist of database warnings.
232 233 234 |
# File 'activerecord/lib/active_record.rb', line 232 def db_warnings_ignore @db_warnings_ignore end |
#default_timezone ⇒ Object (readonly)
Returns the value of attribute default_timezone
188 189 190 |
# File 'activerecord/lib/active_record.rb', line 188 def default_timezone @default_timezone end |
#dump_schema_after_migration ⇒ Object
:singleton-method: Specify whether schema dump should happen at the end of the bin/rails db:migrate command. This is true by default, which is useful for the development environment. This should ideally be false in the production environment where dumping schema is rarely needed.
375 376 377 |
# File 'activerecord/lib/active_record.rb', line 375 def dump_schema_after_migration @dump_schema_after_migration end |
#dump_schemas ⇒ Object
:singleton-method: Specifies which database schemas to dump when calling db:schema:dump. If the value is :schema_search_path (the default), any schemas listed in schema_search_path are dumped. Use :all to dump all schemas regardless of schema_search_path, or a string of comma separated schemas for a custom list.
385 386 387 |
# File 'activerecord/lib/active_record.rb', line 385 def dump_schemas @dump_schemas end |
#error_on_ignored_order ⇒ Object
:singleton-method: Specifies if an error should be raised if the query has an order being ignored when doing batch queries. Useful in applications where the scope being ignored is error-worthy, rather than a warning.
354 355 356 |
# File 'activerecord/lib/active_record.rb', line 354 def error_on_ignored_order @error_on_ignored_order end |
#index_nested_attribute_errors ⇒ Object
Returns the value of attribute index_nested_attribute_errors
286 287 288 |
# File 'activerecord/lib/active_record.rb', line 286 def index_nested_attribute_errors @index_nested_attribute_errors end |
#lazily_load_schema_cache ⇒ Object
Lazily load the schema cache. This option will load the schema cache when a connection is established rather than on boot. If set, config.active_record.use_schema_cache_dump
will be set to false.
179 180 181 |
# File 'activerecord/lib/active_record.rb', line 179 def lazily_load_schema_cache @lazily_load_schema_cache end |
#maintain_test_schema ⇒ Object
Returns the value of attribute maintain_test_schema
304 305 306 |
# File 'activerecord/lib/active_record.rb', line 304 def maintain_test_schema @maintain_test_schema end |
#migration_strategy ⇒ Object
:singleton-method: Specify strategy to use for executing migrations.
366 367 368 |
# File 'activerecord/lib/active_record.rb', line 366 def migration_strategy @migration_strategy end |
#query_transformers ⇒ Object
Returns the value of attribute query_transformers
418 419 420 |
# File 'activerecord/lib/active_record.rb', line 418 def query_transformers @query_transformers end |
#queues ⇒ Object
:singleton-method:
Specifies the names of the queues used by background jobs.
301 302 303 |
# File 'activerecord/lib/active_record.rb', line 301 def queues @queues end |
#raise_int_wider_than_64bit ⇒ Object
:singleton-method: Application configurable boolean that denotes whether or not to raise an exception when the PostgreSQLAdapter is provided with an integer that is wider than signed 64bit representation
433 434 435 |
# File 'activerecord/lib/active_record.rb', line 433 def raise_int_wider_than_64bit @raise_int_wider_than_64bit end |
#raise_on_assign_to_attr_readonly ⇒ Object
Returns the value of attribute raise_on_assign_to_attr_readonly
307 308 309 |
# File 'activerecord/lib/active_record.rb', line 307 def raise_on_assign_to_attr_readonly @raise_on_assign_to_attr_readonly end |
#reading_role ⇒ Object
Returns the value of attribute reading_role
238 239 240 |
# File 'activerecord/lib/active_record.rb', line 238 def reading_role @reading_role end |
#run_after_transaction_callbacks_in_order_defined ⇒ Object
Returns the value of attribute run_after_transaction_callbacks_in_order_defined
316 317 318 |
# File 'activerecord/lib/active_record.rb', line 316 def run_after_transaction_callbacks_in_order_defined @run_after_transaction_callbacks_in_order_defined end |
#schema_cache_ignored_tables ⇒ Object
A list of tables or regex’s to match tables to ignore when dumping the schema cache. For example if this is set to [/^_/] the schema cache will not dump tables named with an underscore.
185 186 187 |
# File 'activerecord/lib/active_record.rb', line 185 def schema_cache_ignored_tables @schema_cache_ignored_tables end |
#schema_format ⇒ Object
:singleton-method: Specifies the format to use when dumping the database schema with Rails’ Rakefile. If :sql, the schema is dumped as (potentially database- specific) SQL statements. If :ruby, the schema is dumped as an ActiveRecord::Schema file which can be loaded into any database that supports migrations. Use :ruby if you want to have different database adapters for, e.g., your development and test environments.
346 347 348 |
# File 'activerecord/lib/active_record.rb', line 346 def schema_format @schema_format end |
#timestamped_migrations ⇒ Object
:singleton-method: Specify whether or not to use timestamps for migration versions
360 361 362 |
# File 'activerecord/lib/active_record.rb', line 360 def @timestamped_migrations end |
#use_yaml_unsafe_load ⇒ Object
:singleton-method: Application configurable boolean that instructs the YAML Coder to use an unsafe load if set to true.
425 426 427 |
# File 'activerecord/lib/active_record.rb', line 425 def use_yaml_unsafe_load @use_yaml_unsafe_load end |
#verbose_query_logs ⇒ Object
:singleton-method:
Specifies if the methods calling database queries should be logged below their relevant queries. Defaults to false.
294 295 296 |
# File 'activerecord/lib/active_record.rb', line 294 def verbose_query_logs @verbose_query_logs end |
#verify_foreign_keys_for_fixtures ⇒ Object
:singleton-method: If true, Rails will verify all foreign keys in the database after loading fixtures. An error will be raised if there are any foreign key violations, indicating incorrectly written fixtures. Supported by PostgreSQL and SQLite.
408 409 410 |
# File 'activerecord/lib/active_record.rb', line 408 def verify_foreign_keys_for_fixtures @verify_foreign_keys_for_fixtures end |
#warn_on_records_fetched_greater_than ⇒ Object
:singleton-method: Specify a threshold for the size of query result sets. If the number of records in the set exceeds the threshold, a warning is logged. This can be used to identify queries which load thousands of records and potentially cause memory bloat.
325 326 327 |
# File 'activerecord/lib/active_record.rb', line 325 def warn_on_records_fetched_greater_than @warn_on_records_fetched_greater_than end |
#writing_role ⇒ Object
Returns the value of attribute writing_role
235 236 237 |
# File 'activerecord/lib/active_record.rb', line 235 def writing_role @writing_role end |
#yaml_column_permitted_classes ⇒ Object
:singleton-method: Application configurable array that provides additional permitted classes to Psych safe_load in the YAML Coder
440 441 442 |
# File 'activerecord/lib/active_record.rb', line 440 def yaml_column_permitted_classes @yaml_column_permitted_classes end |
Class Method Details
.db_warnings_action=(action) ⇒ Object
207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 |
# File 'activerecord/lib/active_record.rb', line 207 def self.db_warnings_action=(action) @db_warnings_action = case action when :ignore nil when :log ->(warning) do = "[#{warning.class}] #{warning.}" += " (#{warning.code})" if warning.code ActiveRecord::Base.logger.warn() end when :raise ->(warning) { raise warning } when :report ->(warning) { Rails.error.report(warning, handled: true) } when Proc action else raise ArgumentError, "db_warnings_action must be one of :ignore, :log, :raise, :report, or a custom proc." end end |
.default_timezone=(default_timezone) ⇒ Object
Determines whether to use Time.utc (using :utc) or Time.local (using :local) when pulling dates and times from the database. This is set to :utc by default.
192 193 194 195 196 197 198 |
# File 'activerecord/lib/active_record.rb', line 192 def self.default_timezone=(default_timezone) unless %i(local utc).include?(default_timezone) raise ArgumentError, "default_timezone must be either :utc (default) or :local." end @default_timezone = default_timezone end |
.deprecator ⇒ Object
:nodoc:
4 5 6 |
# File 'activerecord/lib/active_record/deprecator.rb', line 4 def self.deprecator # :nodoc: @deprecator ||= ActiveSupport::Deprecation.new end |
.eager_load! ⇒ Object
451 452 453 454 455 456 457 458 459 |
# File 'activerecord/lib/active_record.rb', line 451 def self.eager_load! super ActiveRecord::Locking.eager_load! ActiveRecord::Scoping.eager_load! ActiveRecord::Associations.eager_load! ActiveRecord::AttributeMethods.eager_load! ActiveRecord::ConnectionAdapters.eager_load! ActiveRecord::Encryption.eager_load! end |
.gem_version ⇒ Object
Returns the currently loaded version of Active Record as a Gem::Version
.
5 6 7 |
# File 'activerecord/lib/active_record/gem_version.rb', line 5 def self.gem_version Gem::Version.new VERSION::STRING end |
.global_executor_concurrency ⇒ Object
:nodoc:
282 283 284 |
# File 'activerecord/lib/active_record.rb', line 282 def self.global_executor_concurrency # :nodoc: @global_executor_concurrency ||= nil end |
.global_executor_concurrency=(global_executor_concurrency) ⇒ Object
Set the global_executor_concurrency
. This configuration value can only be used with the global thread pool async query executor.
274 275 276 277 278 279 280 |
# File 'activerecord/lib/active_record.rb', line 274 def self.global_executor_concurrency=(global_executor_concurrency) if self.async_query_executor.nil? || self.async_query_executor == :multi_thread_pool raise ArgumentError, "`global_executor_concurrency` cannot be set when using the executor is nil or set to multi_thead_pool. For multiple thread pools, please set the concurrency in your database configuration." end @global_executor_concurrency = global_executor_concurrency end |
.global_thread_pool_async_query_executor ⇒ Object
:nodoc:
262 263 264 265 266 267 268 269 270 |
# File 'activerecord/lib/active_record.rb', line 262 def self.global_thread_pool_async_query_executor # :nodoc: concurrency = global_executor_concurrency || 4 @global_thread_pool_async_query_executor ||= Concurrent::ThreadPoolExecutor.new( min_threads: 0, max_threads: concurrency, max_queue: concurrency * 4, fallback_policy: :caller_runs ) end |
.legacy_connection_handling=(_) ⇒ Object
241 242 243 244 245 246 247 |
# File 'activerecord/lib/active_record.rb', line 241 def self.legacy_connection_handling=(_) raise ArgumentError, <<~MSG.squish The `legacy_connection_handling` setter was deprecated in 7.0 and removed in 7.1, but is still defined in your configuration. Please remove this call as it no longer has any effect." MSG end |
.marshalling_format_version ⇒ Object
443 444 445 |
# File 'activerecord/lib/active_record.rb', line 443 def self.marshalling_format_version Marshalling.format_version end |
.marshalling_format_version=(value) ⇒ Object
447 448 449 |
# File 'activerecord/lib/active_record.rb', line 447 def self.marshalling_format_version=(value) Marshalling.format_version = value end |
.suppress_multiple_database_warning ⇒ Object
388 389 390 391 392 393 |
# File 'activerecord/lib/active_record.rb', line 388 def self.suppress_multiple_database_warning ActiveRecord.deprecator.warn(<<-MSG.squish) config.active_record.suppress_multiple_database_warning is deprecated and will be removed in Rails 7.2. It no longer has any effect and should be removed from the configuration file. MSG end |
.suppress_multiple_database_warning=(value) ⇒ Object
395 396 397 398 399 400 |
# File 'activerecord/lib/active_record.rb', line 395 def self.suppress_multiple_database_warning=(value) ActiveRecord.deprecator.warn(<<-MSG.squish) config.active_record.suppress_multiple_database_warning= is deprecated and will be removed in Rails 7.2. It no longer has any effect and should be removed from the configuration file. MSG end |
.version ⇒ Object
Returns the currently loaded version of Active Record as a Gem::Version
.
7 8 9 |
# File 'activerecord/lib/active_record/version.rb', line 7 def self.version gem_version end |