class ActiveRecord::Associations::BelongsToAssociation

def replace_keys(record, force: false)

def replace_keys(record, force: false)
  target_key = record ? record._read_attribute(primary_key(record.class)) : nil
  if force || owner._read_attribute(reflection.foreign_key) != target_key
    owner[reflection.foreign_key] = target_key
  end
end