Methods
- D
- I
- P
- Q
Constants
| ID_ATTRIBUTE_METHODS | = | %w(id id= id? id_before_type_cast id_was id_in_database id_for_database).to_set.freeze |
Instance Public methods
dangerous_attribute_method?(method_name) Link
instance_method_already_implemented?(method_name) Link
primary_key() Link
Defines the primary key field – can be overridden in subclasses. Overwriting will negate any effect of the primary_key_prefix_type setting, though.
# File activerecord/lib/active_record/attribute_methods/primary_key.rb, line 84 def primary_key if table = loaded_mapped_table table._primary_key elsif @schema_context schema_context.primary_key elsif definition = configured_primary_key_definition definition.name else schema_context.primary_key end end
primary_key=(value) Link
Sets the name of the primary key column.
class Project < ActiveRecord::Base self.primary_key = 'sysid' end
# File activerecord/lib/active_record/attribute_methods/primary_key.rb, line 151 def primary_key=(value) definition = ActiveRecord::Key.for(value) @primary_key_definition = definition include CompositePrimaryKey if definition.composite? reload_schema_from_cache # Regenerate so the id_value reader is replaced by an alias. if definition.composite? ([self] + descendants).each do |model| model.undefine_attribute_methods if model.attribute_methods_generated? end end end