Method: ActiveRecord::ConnectionAdapters::TableDefinition#set_primary_key
- Defined in:
- activerecord/lib/active_record/connection_adapters/abstract/schema_definitions.rb
#set_primary_key(table_name, id, primary_key, **options) ⇒ Object
395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 |
# File 'activerecord/lib/active_record/connection_adapters/abstract/schema_definitions.rb', line 395 def set_primary_key(table_name, id, primary_key, **) if id && !as pk = primary_key || Base.get_primary_key(table_name.to_s.singularize) if id.is_a?(Hash) .merge!(id.except(:type)) id = id.fetch(:type, :primary_key) end if pk.is_a?(Array) primary_keys(pk) else primary_key(pk, id, **) end end end |