модуль ActiveRecord::ModelSchema
Публичные методы класса
# File activerecord/lib/active_record/model_schema.rb, line 81
Имя внутренней таблицы метаданных. По умолчанию значение равно "ar_internal_metadata".
# File activerecord/lib/active_record/model_schema.rb, line 87
Устанавливает имя внутренней таблицы метаданных.
# File activerecord/lib/active_record/model_schema.rb, line 95
Указывает, должны ли имена таблиц быть множественным числом от соответствующих имен классов. Если true, то имя таблицы по умолчанию для класса Product будет “products”. Если false, то просто “product”. См. table_name для полных правил именования таблиц/классов. По умолчанию значение равно true.
# File activerecord/lib/active_record/model_schema.rb, line 103 included do mattr_accessor :primary_key_prefix_type, instance_writer: false class_attribute :table_name_prefix, instance_writer: false self.table_name_prefix = "" class_attribute :table_name_suffix, instance_writer: false self.table_name_suffix = "" class_attribute :schema_migrations_table_name, instance_accessor: false self.schema_migrations_table_name = "schema_migrations" class_attribute :internal_metadata_table_name, instance_accessor: false self.internal_metadata_table_name = "ar_internal_metadata" class_attribute :pluralize_table_names, instance_writer: false self.pluralize_table_names = true self.protected_environments = ["production"] self.inheritance_column = "type" self.ignored_columns = [].freeze delegate :type_for_attribute, to: :class initialize_load_schema_monitor end
Устанавливает, должны ли имена таблиц быть множественным числом от соответствующих имен классов. Если true, то имя таблицы по умолчанию для класса Product будет “products”. Если false, то просто “product”. См. table_name для полных правил именования таблиц/классов. По умолчанию значение равно true.
# File activerecord/lib/active_record/model_schema.rb, line 17
Тип префикса, который будет добавлен к каждому имени столбца первичного ключа. Доступные варианты: :table_name и :table_name_with_underscore. Если указан первый вариант, класс Product будет искать “productid” вместо “id” как первичный столбец. Если указан второй вариант, класс Product будет искать “product_id” вместо “id”. Обратите внимание, что это глобальная настройка для всех Active Records.
# File activerecord/lib/active_record/model_schema.rb, line 27
Устанавливает тип префикса, который будет добавлен к каждому имени столбца первичного ключа. Доступные варианты: :table_name и :table_name_with_underscore. Если указан первый вариант, класс Product будет искать “productid” вместо “id” как первичный столбец. Если указан второй вариант, класс Product будет искать “product_id” вместо “id”. Обратите внимание, что это глобальная настройка для всех Active Records.
# File activerecord/lib/active_record/model_schema.rb, line 69
Имя таблицы миграций схемы. По умолчанию значение равно "schema_migrations".
# File activerecord/lib/active_record/model_schema.rb, line 75
Устанавливает имя таблицы миграций схемы.
# File activerecord/lib/active_record/model_schema.rb, line 33
Строка-префикс, которая добавляется к каждому имени таблицы.
# File activerecord/lib/active_record/model_schema.rb, line 46
Устанавливает строку-префикс, которая добавляется к каждому имени таблицы. Например, если установлено значение “basecamp_”, все имена таблиц будут иметь вид “basecamp_projects”, “basecamp_people” и т.д. Это удобный способ создания пространства имён для таблиц в общей базе данных. По умолчанию префикс — пустая строка.
Если модели организованы в модулях, вы можете добавить префикс к моделям в пространстве имён, определив метод-синглетон в родительском модуле под названием ::table_name_prefix, который возвращает выбранный вами префикс.
# File activerecord/lib/active_record/model_schema.rb, line 52
Строка-суффикс, которая добавляется к каждому имени таблицы.
# File activerecord/lib/active_record/model_schema.rb, line 63
Работает аналогично table_name_prefix=, но добавляет суффикс вместо префикса (установка “_basecamp” даёт “projects_basecamp”, “people_basecamp”). По умолчанию суффикс — пустая строка.
Если модели организованы в модулях, вы можете добавить суффикс к моделям в пространстве имён, определив метод-синглетон в родительском модуле под названием ::table_name_suffix, который возвращает выбранный вами суффикс.
© 2004–2018 David Heinemeier Hansson
Licensed under the MIT License.