# File activerecord/lib/active_record/model_schema.rb, line 10
module ActiveRecord::ModelSchema
Public Class Methods
The list of columns names the model should ignore. Ignored columns won't have attribute accessors defined, and won't be referenced in SQL queries.
# File activerecord/lib/active_record/model_schema.rb, line 119
Sets the columns names the model should ignore. Ignored columns won't have attribute accessors defined, and won't be referenced in SQL queries.
# File activerecord/lib/active_record/model_schema.rb, line 132 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 :protected_environments, instance_accessor: false, default: [ "production" ] class_attribute :pluralize_table_names, instance_writer: false, default: true class_attribute :ignored_columns, instance_accessor: false, default: [].freeze self.inheritance_column = "type" delegate :type_for_attribute, to: :class initialize_load_schema_monitor end
The name of the internal metadata table. By default, the value is "ar_internal_metadata"
.
# File activerecord/lib/active_record/model_schema.rb, line 78
Sets the name of the internal metadata table.
# File activerecord/lib/active_record/model_schema.rb, line 84
Indicates whether table names should be the pluralized versions of the corresponding class names. If true, the default table name for a Product class will be “products”. If false, it would just be “product”. See table_name for the full rules on table/class naming. This is true, by default.
# File activerecord/lib/active_record/model_schema.rb, line 103
Set whether table names should be the pluralized versions of the corresponding class names. If true, the default table name for a Product class will be “products”. If false, it would just be “product”. See table_name for the full rules on table/class naming. This is true, by default.
# File activerecord/lib/active_record/model_schema.rb, line 111
The prefix type that will be prepended to every primary key column name. The options are :table_name
and :table_name_with_underscore
. If the first is specified, the Product class will look for “productid” instead of “id” as the primary column. If the latter is specified, the Product class will look for “product_id” instead of “id”. Remember that this is a global setting for all Active Records.
Sets the prefix type that will be prepended to every primary key column name. The options are :table_name
and :table_name_with_underscore
. If the first is specified, the Product class will look for “productid” instead of “id” as the primary column. If the latter is specified, the Product class will look for “product_id” instead of “id”. Remember that this is a global setting for all Active Records.
# File activerecord/lib/active_record/model_schema.rb, line 20
The array of names of environments where destructive actions should be prohibited. By default, the value is ["production"]
.
# File activerecord/lib/active_record/model_schema.rb, line 90
Sets an array of names of environments where destructive actions should be prohibited.
# File activerecord/lib/active_record/model_schema.rb, line 97
The name of the schema migrations table. By default, the value is "schema_migrations"
.
# File activerecord/lib/active_record/model_schema.rb, line 66
Sets the name of the schema migrations table.
# File activerecord/lib/active_record/model_schema.rb, line 72
The prefix string to prepend to every table name.
# File activerecord/lib/active_record/model_schema.rb, line 30
Sets the prefix string to prepend to every table name. So if set to “basecamp_”, all table names will be named like “basecamp_projects”, “basecamp_people”, etc. This is a convenient way of creating a namespace for tables in a shared database. By default, the prefix is the empty string.
If you are organising your models within modules you can add a prefix to the models within a namespace by defining a singleton method in the parent module called table_name_prefix
which returns your chosen prefix.
# File activerecord/lib/active_record/model_schema.rb, line 36
The suffix string to append to every table name.
# File activerecord/lib/active_record/model_schema.rb, line 49
Works like table_name_prefix=
, but appends instead of prepends (set to “_basecamp” gives “projects_basecamp”, “people_basecamp”). By default, the suffix is the empty string.
If you are organising your models within modules, you can add a suffix to the models within a namespace by defining a singleton method in the parent module called table_name_suffix
which returns your chosen suffix.
# File activerecord/lib/active_record/model_schema.rb, line 55