Revision d7c67746
Added by Michael Moll almost 6 years ago
db/migrate/20130520152000_remove_duplicate_fact_names.rb | ||
---|---|---|
unique_names = FactName.group(:name).maximum(:id)
|
||
unique_names.each do |fact_name, fact_name_id|
|
||
duplicates = FactName.where("name=? and id<>?", fact_name, fact_name_id).select(:id)
|
||
ActiveRecord::Base.transaction do
|
||
FactValue.update_all(
|
||
["fact_name_id=?", fact_name_id],
|
||
["fact_name_id in (?)", duplicates]
|
||
)
|
||
UserFact.update_all(
|
||
["fact_name_id=?", fact_name_id],
|
||
["fact_name_id in (?)", duplicates]
|
||
)
|
||
FactName.where(["id in (?)", duplicates]).delete_all
|
||
end if duplicates.any?
|
||
if duplicates.any?
|
||
ActiveRecord::Base.transaction do
|
||
FactValue.update_all(
|
||
["fact_name_id=?", fact_name_id],
|
||
["fact_name_id in (?)", duplicates]
|
||
)
|
||
UserFact.update_all(
|
||
["fact_name_id=?", fact_name_id],
|
||
["fact_name_id in (?)", duplicates]
|
||
)
|
||
FactName.where(["id in (?)", duplicates]).delete_all
|
||
end
|
||
end
|
||
end
|
||
end
|
||
|
Also available in: Unified diff
Fixes #19873 - Fix Style/MultilineIfModifier cop (#5705)