finish tag name uniqueness migration
This commit is contained in:
parent
d825463472
commit
9e05f3196c
1 changed files with 6 additions and 2 deletions
|
|
@ -17,11 +17,15 @@ SQL
|
||||||
tag_ids = execute("SELECT tags.id FROM tags WHERE tags.name = '#{name}'").to_a.flatten!
|
tag_ids = execute("SELECT tags.id FROM tags WHERE tags.name = '#{name}'").to_a.flatten!
|
||||||
id_to_keep = tag_ids.pop
|
id_to_keep = tag_ids.pop
|
||||||
execute <<SQL
|
execute <<SQL
|
||||||
UPDATE taggings
|
UPDATE IGNORE taggings
|
||||||
SET taggings.tag_id = #{id_to_keep}
|
SET taggings.tag_id = #{id_to_keep}
|
||||||
WHERE taggings.tag_id IN (#{tag_ids.join(',')})
|
WHERE taggings.tag_id IN (#{tag_ids.join(',')})
|
||||||
SQL
|
SQL
|
||||||
execute("DELETE tags WHERE tags.id IN (#{tag_ids.join(',')})")
|
execute <<SQL
|
||||||
|
DELETE FROM taggings WHERE taggings.tag_id IN (#{tag_ids.join(',')})
|
||||||
|
SQL
|
||||||
|
|
||||||
|
execute("DELETE FROM tags WHERE tags.id IN (#{tag_ids.join(',')})")
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue