method
replace_keys
v7.1.3.4 -
Show latest stable
- Class:
ActiveRecord::Associations::BelongsToAssociation
replace_keys(record, force: false)private
No documentation available.
# File activerecord/lib/active_record/associations/belongs_to_association.rb, line 126
def replace_keys(record, force: false)
target_key_values = record ? Array(primary_key(record.class)).map { |key| record._read_attribute(key) } : []
reflection_fk = Array(reflection.foreign_key)
if force || reflection_fk.map { |fk| owner._read_attribute(fk) } != target_key_values
reflection_fk.zip(target_key_values).each do |key, value|
owner[key] = value
end
end
end