Fix implication antecedents with aliases
This commit is contained in:
@@ -0,0 +1,19 @@
|
||||
class UpdateAliasedImplicationAntecedents < ActiveRecord::Migration
|
||||
def change
|
||||
execute "set statement_timeout = 0"
|
||||
TagImplication.find_each do |ti|
|
||||
ta = TagAlias.where("antecedent_name = ? AND status != ?", ti.antecedent_name, "pending").first
|
||||
if ta
|
||||
if ta.consequent_name == ti.consequent_name
|
||||
ti.destroy
|
||||
elsif TagImplication.where("antecedent_name = ? AND consequent_name = ?", ta.consequent_name, ti.consequent_name).exists?
|
||||
ti.destroy
|
||||
else
|
||||
ti.antecedent_name = ta.consequent_name
|
||||
ti.save
|
||||
end
|
||||
ta.update_posts
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
Reference in New Issue
Block a user