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.
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 127 def primary_key=(value) @primary_key_definition = ActiveRecord::Key.for(value) @primary_key_inherited = false include CompositePrimaryKey if primary_key_definition.composite? # Only invalidate loaded contexts; initial schema loading can resolve the primary key. ([self] + descendants).each do |model| model.clear_inherited_primary_key model.reload_schema_from_cache(false) if model.schema_loaded? # Regenerate so the id_value reader is replaced by an alias. model.undefine_attribute_methods if primary_key_definition.composite? && model.attribute_methods_generated? end end