Module: ActiveRecord
- Extended by:
- ActiveSupport::Autoload
- Defined in:
- lib/active_record/base.rb,
lib/active_record.rb,
lib/active_record/core.rb,
lib/active_record/enum.rb,
lib/active_record/type.rb,
lib/active_record/store.rb,
lib/active_record/errors.rb,
lib/active_record/result.rb,
lib/active_record/schema.rb,
lib/active_record/explain.rb,
lib/active_record/railtie.rb,
lib/active_record/scoping.rb,
lib/active_record/version.rb,
lib/active_record/fixtures.rb,
lib/active_record/querying.rb,
lib/active_record/relation.rb,
lib/active_record/callbacks.rb,
lib/active_record/migration.rb,
lib/active_record/signed_id.rb,
lib/active_record/timestamp.rb,
lib/active_record/type/date.rb,
lib/active_record/type/json.rb,
lib/active_record/type/text.rb,
lib/active_record/type/time.rb,
lib/active_record/attributes.rb,
lib/active_record/encryption.rb,
lib/active_record/insert_all.rb,
lib/active_record/query_logs.rb,
lib/active_record/reflection.rb,
lib/active_record/suppressor.rb,
lib/active_record/coders/json.rb,
lib/active_record/gem_version.rb,
lib/active_record/inheritance.rb,
lib/active_record/integration.rb,
lib/active_record/no_touching.rb,
lib/active_record/persistence.rb,
lib/active_record/query_cache.rb,
lib/active_record/touch_later.rb,
lib/active_record/translation.rb,
lib/active_record/type_caster.rb,
lib/active_record/validations.rb,
lib/active_record/aggregations.rb,
lib/active_record/associations.rb,
lib/active_record/model_schema.rb,
lib/active_record/sanitization.rb,
lib/active_record/secure_token.rb,
lib/active_record/transactions.rb,
lib/active_record/counter_cache.rb,
lib/active_record/future_result.rb,
lib/active_record/null_relation.rb,
lib/active_record/schema_dumper.rb,
lib/active_record/scoping/named.rb,
lib/active_record/serialization.rb,
lib/active_record/test_fixtures.rb,
lib/active_record/type/type_map.rb,
lib/active_record/delegated_type.rb,
lib/active_record/encryption/key.rb,
lib/active_record/log_subscriber.rb,
lib/active_record/table_metadata.rb,
lib/active_record/test_databases.rb,
lib/active_record/type/date_time.rb,
lib/active_record/relation/merger.rb,
lib/active_record/scoping/default.rb,
lib/active_record/statement_cache.rb,
lib/active_record/type/serialized.rb,
lib/active_record/type_caster/map.rb,
lib/active_record/dynamic_matchers.rb,
lib/active_record/explain_registry.rb,
lib/active_record/fixture_set/file.rb,
lib/active_record/relation/batches.rb,
lib/active_record/runtime_registry.rb,
lib/active_record/schema_migration.rb,
lib/rails/generators/active_record.rb,
lib/active_record/attribute_methods.rb,
lib/active_record/encryption/cipher.rb,
lib/active_record/encryption/config.rb,
lib/active_record/encryption/errors.rb,
lib/active_record/encryption/scheme.rb,
lib/active_record/internal_metadata.rb,
lib/active_record/nested_attributes.rb,
lib/active_record/coders/yaml_column.rb,
lib/active_record/encryption/context.rb,
lib/active_record/encryption/message.rb,
lib/active_record/explain_subscriber.rb,
lib/active_record/locking/optimistic.rb,
lib/active_record/validations/length.rb,
lib/active_record/connection_adapters.rb,
lib/active_record/connection_handling.rb,
lib/active_record/encryption/contexts.rb,
lib/active_record/legacy_yaml_adapter.rb,
lib/active_record/locking/pessimistic.rb,
lib/active_record/readonly_attributes.rb,
lib/active_record/relation/delegation.rb,
lib/active_record/validations/absence.rb,
lib/active_record/association_relation.rb,
lib/active_record/attribute_assignment.rb,
lib/active_record/autosave_association.rb,
lib/active_record/encryption/encryptor.rb,
lib/active_record/migration/join_table.rb,
lib/active_record/relation/from_clause.rb,
lib/active_record/tasks/database_tasks.rb,
lib/active_record/validations/presence.rb,
lib/active_record/encryption/properties.rb,
lib/active_record/fixture_set/table_row.rb,
lib/active_record/relation/calculations.rb,
lib/active_record/relation/where_clause.rb,
lib/active_record/type/unsigned_integer.rb,
lib/active_record/associations/preloader.rb,
lib/active_record/attribute_methods/read.rb,
lib/active_record/fixture_set/table_rows.rb,
lib/active_record/relation/query_methods.rb,
lib/active_record/relation/spawn_methods.rb,
lib/active_record/type/internal/timezone.rb,
lib/active_record/type_caster/connection.rb,
lib/active_record/validations/associated.rb,
lib/active_record/validations/uniqueness.rb,
lib/active_record/attribute_methods/dirty.rb,
lib/active_record/attribute_methods/query.rb,
lib/active_record/attribute_methods/write.rb,
lib/active_record/database_configurations.rb,
lib/active_record/encryption/configurable.rb,
lib/active_record/encryption/key_provider.rb,
lib/active_record/migration/compatibility.rb,
lib/active_record/relation/finder_methods.rb,
lib/active_record/associations/association.rb,
lib/active_record/encryption/key_generator.rb,
lib/active_record/relation/query_attribute.rb,
lib/active_record/validations/numericality.rb,
lib/active_record/encryption/null_encryptor.rb,
lib/active_record/middleware/shard_selector.rb,
lib/active_record/type/hash_lookup_type_map.rb,
lib/active_record/associations/alias_tracker.rb,
lib/active_record/connection_adapters/column.rb,
lib/active_record/fixture_set/model_metadata.rb,
lib/active_record/migration/command_recorder.rb,
lib/active_record/relation/predicate_builder.rb,
lib/active_record/tasks/mysql_database_tasks.rb,
lib/active_record/type/decimal_without_scale.rb,
lib/rails/generators/active_record/migration.rb,
lib/active_record/railties/controller_runtime.rb,
lib/active_record/tasks/sqlite_database_tasks.rb,
lib/active_record/associations/join_dependency.rb,
lib/active_record/associations/preloader/batch.rb,
lib/active_record/asynchronous_queries_tracker.rb,
lib/active_record/encryption/cipher/aes256_gcm.rb,
lib/active_record/middleware/database_selector.rb,
lib/active_record/associations/collection_proxy.rb,
lib/active_record/associations/preloader/branch.rb,
lib/active_record/attribute_methods/primary_key.rb,
lib/active_record/destroy_association_async_job.rb,
lib/active_record/encryption/encryptable_record.rb,
lib/active_record/encryption/encrypted_fixtures.rb,
lib/active_record/encryption/message_serializer.rb,
lib/active_record/relation/record_fetch_warning.rb,
lib/active_record/associations/association_scope.rb,
lib/active_record/type/adapter_specific_registry.rb,
lib/active_record/attribute_methods/serialization.rb,
lib/active_record/connection_adapters/pool_config.rb,
lib/active_record/tasks/postgresql_database_tasks.rb,
lib/active_record/associations/has_one_association.rb,
lib/active_record/associations/through_association.rb,
lib/active_record/connection_adapters/deduplicable.rb,
lib/active_record/connection_adapters/mysql/column.rb,
lib/active_record/connection_adapters/pool_manager.rb,
lib/active_record/connection_adapters/schema_cache.rb,
lib/active_record/associations/has_many_association.rb,
lib/active_record/associations/singular_association.rb,
lib/active_record/connection_adapters/mysql/quoting.rb,
lib/active_record/relation/batches/batch_enumerator.rb,
lib/active_record/associations/preloader/association.rb,
lib/active_record/attribute_methods/before_type_cast.rb,
lib/active_record/connection_adapters/mysql2_adapter.rb,
lib/active_record/connection_adapters/postgresql/oid.rb,
lib/active_record/connection_adapters/statement_pool.rb,
lib/active_record/database_configurations/url_config.rb,
lib/active_record/disable_joins_association_relation.rb,
lib/active_record/associations/belongs_to_association.rb,
lib/active_record/associations/collection_association.rb,
lib/active_record/connection_adapters/sqlite3/quoting.rb,
lib/active_record/connection_adapters/sqlite3_adapter.rb,
lib/active_record/database_configurations/hash_config.rb,
lib/active_record/encryption/encrypted_attribute_type.rb,
lib/active_record/encryption/read_only_null_encryptor.rb,
lib/active_record/connection_adapters/abstract/quoting.rb,
lib/active_record/connection_adapters/abstract_adapter.rb,
lib/active_record/connection_adapters/postgresql/utils.rb,
lib/active_record/encryption/encrypting_only_encryptor.rb,
lib/active_record/connection_adapters/postgresql/column.rb,
lib/active_record/connection_adapters/sql_type_metadata.rb,
lib/active_record/encryption/deterministic_key_provider.rb,
lib/active_record/middleware/database_selector/resolver.rb,
lib/active_record/associations/join_dependency/join_base.rb,
lib/active_record/associations/join_dependency/join_part.rb,
lib/active_record/attribute_methods/time_zone_conversion.rb,
lib/active_record/connection_adapters/postgresql/oid/bit.rb,
lib/active_record/connection_adapters/postgresql/oid/oid.rb,
lib/active_record/connection_adapters/postgresql/oid/xml.rb,
lib/active_record/connection_adapters/postgresql/quoting.rb,
lib/active_record/connection_adapters/postgresql_adapter.rb,
lib/active_record/encryption/derived_secret_key_provider.rb,
lib/rails/generators/active_record/model/model_generator.rb,
lib/active_record/connection_adapters/abstract/savepoints.rb,
lib/active_record/connection_adapters/legacy_pool_manager.rb,
lib/active_record/connection_adapters/mysql/schema_dumper.rb,
lib/active_record/connection_adapters/mysql/type_metadata.rb,
lib/active_record/connection_adapters/postgresql/oid/cidr.rb,
lib/active_record/connection_adapters/postgresql/oid/date.rb,
lib/active_record/connection_adapters/postgresql/oid/enum.rb,
lib/active_record/connection_adapters/postgresql/oid/inet.rb,
lib/active_record/connection_adapters/postgresql/oid/uuid.rb,
lib/active_record/database_configurations/database_config.rb,
lib/active_record/associations/has_one_through_association.rb,
lib/active_record/connection_adapters/abstract/query_cache.rb,
lib/active_record/connection_adapters/abstract/transaction.rb,
lib/active_record/connection_adapters/postgresql/oid/array.rb,
lib/active_record/connection_adapters/postgresql/oid/bytea.rb,
lib/active_record/connection_adapters/postgresql/oid/jsonb.rb,
lib/active_record/connection_adapters/postgresql/oid/money.rb,
lib/active_record/connection_adapters/postgresql/oid/point.rb,
lib/active_record/connection_adapters/postgresql/oid/range.rb,
lib/active_record/relation/predicate_builder/array_handler.rb,
lib/active_record/relation/predicate_builder/range_handler.rb,
lib/active_record/associations/has_many_through_association.rb,
lib/active_record/connection_adapters/mysql/schema_creation.rb,
lib/active_record/connection_adapters/postgresql/oid/hstore.rb,
lib/active_record/connection_adapters/postgresql/oid/vector.rb,
lib/active_record/connection_adapters/sqlite3/schema_dumper.rb,
lib/active_record/encryption/extended_deterministic_queries.rb,
lib/active_record/associations/preloader/through_association.rb,
lib/active_record/connection_adapters/abstract/schema_dumper.rb,
lib/active_record/connection_adapters/abstract_mysql_adapter.rb,
lib/active_record/connection_adapters/postgresql/oid/decimal.rb,
lib/active_record/connection_adapters/postgresql/oid/macaddr.rb,
lib/active_record/connection_adapters/mysql/schema_statements.rb,
lib/active_record/connection_adapters/postgresql/oid/interval.rb,
lib/active_record/connection_adapters/sqlite3/schema_creation.rb,
lib/active_record/encryption/envelope_encryption_key_provider.rb,
lib/active_record/relation/predicate_builder/relation_handler.rb,
lib/active_record/associations/disable_joins_association_scope.rb,
lib/active_record/connection_adapters/abstract/connection_pool.rb,
lib/active_record/connection_adapters/abstract/database_limits.rb,
lib/active_record/connection_adapters/abstract/schema_creation.rb,
lib/active_record/connection_adapters/mysql/schema_definitions.rb,
lib/active_record/connection_adapters/postgresql/oid/date_time.rb,
lib/active_record/connection_adapters/postgresql/oid/timestamp.rb,
lib/active_record/connection_adapters/postgresql/schema_dumper.rb,
lib/active_record/connection_adapters/postgresql/type_metadata.rb,
lib/rails/generators/active_record/multi_db/multi_db_generator.rb,
lib/active_record/associations/join_dependency/join_association.rb,
lib/active_record/connection_adapters/mysql/database_statements.rb,
lib/active_record/connection_adapters/sqlite3/schema_statements.rb,
lib/active_record/middleware/database_selector/resolver/session.rb,
lib/active_record/connection_adapters/abstract/schema_statements.rb,
lib/active_record/connection_adapters/postgresql/oid/bit_varying.rb,
lib/active_record/connection_adapters/postgresql/schema_creation.rb,
lib/active_record/connection_adapters/sqlite3/schema_definitions.rb,
lib/rails/generators/active_record/migration/migration_generator.rb,
lib/active_record/associations/belongs_to_polymorphic_association.rb,
lib/active_record/connection_adapters/abstract/connection_handler.rb,
lib/active_record/connection_adapters/abstract/schema_definitions.rb,
lib/active_record/connection_adapters/postgresql/oid/legacy_point.rb,
lib/active_record/connection_adapters/sqlite3/database_statements.rb,
lib/active_record/database_configurations/connection_url_resolver.rb,
lib/active_record/relation/predicate_builder/basic_object_handler.rb,
lib/active_record/connection_adapters/abstract/database_statements.rb,
lib/active_record/connection_adapters/mysql/explain_pretty_printer.rb,
lib/active_record/connection_adapters/postgresql/schema_statements.rb,
lib/active_record/connection_adapters/postgresql/schema_definitions.rb,
lib/active_record/connection_adapters/abstract/connection_pool/queue.rb,
lib/active_record/connection_adapters/postgresql/database_statements.rb,
lib/active_record/connection_adapters/sqlite3/explain_pretty_printer.rb,
lib/active_record/relation/predicate_builder/association_query_value.rb,
lib/active_record/relation/predicate_builder/polymorphic_array_value.rb,
lib/active_record/connection_adapters/abstract/connection_pool/reaper.rb,
lib/active_record/connection_adapters/postgresql/referential_integrity.rb,
lib/active_record/connection_adapters/postgresql/explain_pretty_printer.rb,
lib/active_record/connection_adapters/postgresql/oid/specialized_string.rb,
lib/active_record/encryption/extended_deterministic_uniqueness_validator.rb,
lib/active_record/connection_adapters/postgresql/oid/type_map_initializer.rb,
lib/active_record/connection_adapters/postgresql/oid/timestamp_with_time_zone.rb,
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, Middleware, ModelSchema, NestedAttributes, NoTouching, NullRelation, Persistence, QueryLogs, QueryMethods, Querying, Railties, ReadonlyAttributes, Reflection, RuntimeRegistry, Sanitization, Scoping, SecureToken, Serialization, SignedId, SpawnMethods, Store, Suppressor, Tasks, TestDatabases, TestFixtures, Timestamp, TouchLater, Transactions, Translation, Type, TypeCaster, VERSION, Validations Classes: ActiveJobRequiredError, ActiveRecordError, AdapterNotFound, AdapterNotSpecified, AdapterTimeout, AmbiguousSourceReflectionForThroughAssociation, AssociationNotFoundError, AssociationRelation, AssociationTypeMismatch, AsynchronousQueriesTracker, AsynchronousQueryInsideTransactionError, AttributeAssignmentError, Base, ConcurrentMigrationError, ConfigurationError, 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, ProtectedEnvironmentError, QueryAborted, QueryCache, QueryCanceled, Railtie, RangeError, ReadOnlyError, ReadOnlyRecord, RecordInvalid, RecordNotDestroyed, RecordNotFound, RecordNotSaved, RecordNotUnique, Relation, Result, Rollback, 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
- 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.
-
#application_record_class ⇒ Object
Returns the value of attribute application_record_class.
-
#async_query_executor ⇒ Object
Sets the async_query_executor for an application.
-
#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.
-
#legacy_connection_handling ⇒ Object
Returns the value of attribute legacy_connection_handling.
-
#maintain_test_schema ⇒ Object
Returns the value of attribute maintain_test_schema.
-
#query_transformers ⇒ Object
Returns the value of attribute query_transformers.
-
#queues ⇒ Object
:singleton-method:.
-
#reading_role ⇒ Object
Returns the value of attribute reading_role.
-
#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.
-
#suppress_multiple_database_warning ⇒ Object
:singleton-method: Show a warning when Rails couldn’t parse your database.yml for multiple databases.
-
#timestamped_migrations ⇒ Object
:singleton-method: Specify whether or not to use timestamps for migration versions.
-
#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.
Class Method Summary collapse
-
.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.
- .eager_load! ⇒ Object
-
.gem_version ⇒ Object
Returns the version of the currently loaded 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:.
-
.version ⇒ Object
Returns the version of the currently loaded ActiveRecord as a
Gem::Version
.
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.
277 278 279 |
# File 'lib/active_record.rb', line 277 def action_on_strict_loading_violation @action_on_strict_loading_violation end |
#application_record_class ⇒ Object
Returns the value of attribute application_record_class.
270 271 272 |
# File 'lib/active_record.rb', line 270 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.
213 214 215 |
# File 'lib/active_record.rb', line 213 def async_query_executor @async_query_executor end |
#default_timezone ⇒ Object (readonly)
Returns the value of attribute default_timezone.
183 184 185 |
# File 'lib/active_record.rb', line 183 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.
311 312 313 |
# File 'lib/active_record.rb', line 311 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.
321 322 323 |
# File 'lib/active_record.rb', line 321 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.
296 297 298 |
# File 'lib/active_record.rb', line 296 def error_on_ignored_order @error_on_ignored_order end |
#index_nested_attribute_errors ⇒ Object
Returns the value of attribute index_nested_attribute_errors.
240 241 242 |
# File 'lib/active_record.rb', line 240 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.
171 172 173 |
# File 'lib/active_record.rb', line 171 def lazily_load_schema_cache @lazily_load_schema_cache end |
#legacy_connection_handling ⇒ Object
Returns the value of attribute legacy_connection_handling.
180 181 182 |
# File 'lib/active_record.rb', line 180 def legacy_connection_handling @legacy_connection_handling end |
#maintain_test_schema ⇒ Object
Returns the value of attribute maintain_test_schema.
258 259 260 |
# File 'lib/active_record.rb', line 258 def maintain_test_schema @maintain_test_schema end |
#query_transformers ⇒ Object
Returns the value of attribute query_transformers.
340 341 342 |
# File 'lib/active_record.rb', line 340 def query_transformers @query_transformers end |
#queues ⇒ Object
:singleton-method:
Specifies the names of the queues used by background jobs.
255 256 257 |
# File 'lib/active_record.rb', line 255 def queues @queues end |
#reading_role ⇒ Object
Returns the value of attribute reading_role.
200 201 202 |
# File 'lib/active_record.rb', line 200 def reading_role @reading_role 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.
177 178 179 |
# File 'lib/active_record.rb', line 177 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.
288 289 290 |
# File 'lib/active_record.rb', line 288 def schema_format @schema_format end |
#suppress_multiple_database_warning ⇒ Object
:singleton-method: Show a warning when Rails couldn’t parse your database.yml for multiple databases.
328 329 330 |
# File 'lib/active_record.rb', line 328 def suppress_multiple_database_warning @suppress_multiple_database_warning end |
#timestamped_migrations ⇒ Object
:singleton-method: Specify whether or not to use timestamps for migration versions
302 303 304 |
# File 'lib/active_record.rb', line 302 def @timestamped_migrations end |
#verbose_query_logs ⇒ Object
:singleton-method:
Specifies if the methods calling database queries should be logged below their relevant queries. Defaults to false.
248 249 250 |
# File 'lib/active_record.rb', line 248 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.
337 338 339 |
# File 'lib/active_record.rb', line 337 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.
267 268 269 |
# File 'lib/active_record.rb', line 267 def warn_on_records_fetched_greater_than @warn_on_records_fetched_greater_than end |
#writing_role ⇒ Object
Returns the value of attribute writing_role.
197 198 199 |
# File 'lib/active_record.rb', line 197 def writing_role @writing_role end |
Class Method Details
.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.
187 188 189 190 191 192 193 |
# File 'lib/active_record.rb', line 187 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 |
.eager_load! ⇒ Object
343 344 345 346 347 348 349 350 351 |
# File 'lib/active_record.rb', line 343 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 version of the currently loaded Active Record as a Gem::Version
5 6 7 |
# File 'lib/active_record/gem_version.rb', line 5 def self.gem_version Gem::Version.new VERSION::STRING end |
.global_executor_concurrency ⇒ Object
:nodoc:
236 237 238 |
# File 'lib/active_record.rb', line 236 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.
228 229 230 231 232 233 234 |
# File 'lib/active_record.rb', line 228 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:
216 217 218 219 220 221 222 223 224 |
# File 'lib/active_record.rb', line 216 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 |
.version ⇒ Object
Returns the version of the currently loaded ActiveRecord as a Gem::Version
7 8 9 |
# File 'lib/active_record/version.rb', line 7 def self.version gem_version end |