2019-05-03 06:17:27 +08:00
|
|
|
# frozen_string_literal: true
|
|
|
|
|
2017-08-31 12:06:56 +08:00
|
|
|
class IndexUserBadges < ActiveRecord::Migration[4.2]
|
2014-07-05 16:32:06 +08:00
|
|
|
def change
|
2023-01-09 19:59:41 +08:00
|
|
|
execute "DELETE FROM user_badges USING user_badges ub2
|
2014-07-05 16:32:06 +08:00
|
|
|
WHERE user_badges.badge_id = ub2.badge_id AND
|
|
|
|
user_badges.user_id = ub2.user_id AND
|
|
|
|
user_badges.post_id IS NOT NULL AND
|
|
|
|
user_badges.id < ub2.id
|
2023-01-09 19:59:41 +08:00
|
|
|
"
|
|
|
|
add_index :user_badges, %i[badge_id user_id post_id], unique: true, where: "post_id IS NOT NULL"
|
2014-07-05 16:32:06 +08:00
|
|
|
end
|
|
|
|
end
|