модуль ActiveRecord::ModelSchema
Публичные методы класса
# File activerecord/lib/active_record/model_schema.rb, line 129 included do mattr_accessor :primary_key_prefix_type, instance_writer: false class_attribute :table_name_prefix, instance_writer: false, default: "" class_attribute :table_name_suffix, instance_writer: false, default: "" class_attribute :schema_migrations_table_name, instance_accessor: false, default: "schema_migrations" class_attribute :internal_metadata_table_name, instance_accessor: false, default: "ar_internal_metadata" class_attribute :pluralize_table_names, instance_writer: false, default: true class_attribute :implicit_order_column, instance_accessor: false class_attribute :immutable_strings_by_default, instance_accessor: false self.protected_environments = ["production"] self.inheritance_column = "type" self.ignored_columns = [].freeze delegate :type_for_attribute, :column_for_attribute, to: :class initialize_load_schema_monitor end
Определяет, должны ли столбцы определять свой тип как `:string` или `:immutable_string`. Эта настройка не влияет на поведение `attribute :foo, :string`. По умолчанию значение false.
# File activerecord/lib/active_record/model_schema.rb, line 106
Имя столбца, по которому сортируются записи, если при вызове упорядоченного поиска не указано явное условие сортировки. Если не задано, используется первичный ключ.
# File activerecord/lib/active_record/model_schema.rb, line 113
Устанавливает столбец для сортировки записей, когда при вызове упорядоченного поиска не указано явное условие сортировки. Полезно, когда первичный ключ не является целочисленным значением с автоинкрементом, например, когда это UUID. Записи сортируются по первичному ключу, если он существует, чтобы обеспечить детерминированные результаты.
# File activerecord/lib/active_record/model_schema.rb, line 78
Имя внутреннего метаданных таблицы. По умолчанию значение равно "ar_internal_metadata".
# File activerecord/lib/active_record/model_schema.rb, line 84
Устанавливает имя внутренней таблицы метаданных.
# File activerecord/lib/active_record/model_schema.rb, line 90
Указывает, должны ли имена таблиц быть множественным числом от соответствующих имён классов. Если true, имя таблицы по умолчанию для класса Product будет “products”. Если false, будет просто “product”. Смотрите table_name для полных правил именования таблиц/классов. По умолчанию значение true.
# File activerecord/lib/active_record/model_schema.rb, line 98
Устанавливает, должны ли имена таблиц быть множественным числом от соответствующих имён классов. Если true, имя таблицы по умолчанию для класса Product будет “products”. Если false, будет просто “product”. Смотрите table_name для полных правил именования таблиц/классов. По умолчанию значение true.
# File activerecord/lib/active_record/model_schema.rb, line 10
Тип префикса, который будет добавлен к каждому имени столбца первичного ключа. Доступные варианты: :table_name и :table_name_with_underscore. Если указан первый, класс Product будет искать “productid” вместо “id” в качестве первичного столбца. Если указан второй, класс Product будет искать “product_id” вместо “id”. Помните, что это глобальная настройка для всех Active Records.
# File activerecord/lib/active_record/model_schema.rb, line 20
Устанавливает тип префикса, который будет добавлен к каждому имени столбца первичного ключа. Доступные варианты: :table_name и :table_name_with_underscore. Если указан первый, класс Product будет искать “productid” вместо “id” в качестве первичного столбца. Если указан второй, класс Product будет искать “product_id” вместо “id”. Помните, что это глобальная настройка для всех Active Records.
# File activerecord/lib/active_record/model_schema.rb, line 66
Имя таблицы миграций схемы. По умолчанию значение равно "schema_migrations".
# File activerecord/lib/active_record/model_schema.rb, line 72
Устанавливает имя таблицы миграций схемы.
# File activerecord/lib/active_record/model_schema.rb, line 30
Строка-префикс, добавляемая к каждому имени таблицы.
# File activerecord/lib/active_record/model_schema.rb, line 36
Устанавливает строку-префикс, добавляемую к каждому имени таблицы. Например, если задано “basecamp_”, все имена таблиц будут выглядеть как “basecamp_projects”, “basecamp_people” и т.д. Это удобный способ создания пространства имён для таблиц в общей базе данных. По умолчанию префикс пустая строка.
Если вы организуете свои модели в модулях, вы можете добавить префикс к моделям в пространстве имен, определив в родительском модуле метод table_name_prefix, который возвращает выбранный префикс.
# File activerecord/lib/active_record/model_schema.rb, line 49
Строка-суффикс, добавляемая к каждому имени таблицы.
# File activerecord/lib/active_record/model_schema.rb, line 55
Действует как table_name_prefix=, но добавляет вместо добавления в начало (например, “_basecamp” даёт “projects_basecamp”, “people_basecamp”). По умолчанию суффикс пустая строка.
Если вы организуете свои модели в модулях, вы можете добавить суффикс к моделям в пространстве имен, определив в родительском модуле метод table_name_suffix, который возвращает выбранный суффикс.
© 2004–2020 David Heinemeier Hansson
Licensed under the MIT License.