Method: ActiveRecord::AttributeMethods::PrimaryKey::ClassMethods#get_primary_key

Defined in:
lib/active_record/attribute_methods/primary_key.rb

#get_primary_key(base_name) ⇒ Object

:nodoc:



106
107
108
109
110
111
112
113
114
115
116
# File 'lib/active_record/attribute_methods/primary_key.rb', line 106

def get_primary_key(base_name) # :nodoc:
  if base_name && primary_key_prefix_type == :table_name
    base_name.foreign_key(false)
  elsif base_name && primary_key_prefix_type == :table_name_with_underscore
    base_name.foreign_key
  elsif ActiveRecord::Base != self && table_exists?
    schema_cache.primary_keys(table_name)
  else
    "id"
  end
end