mirror of
https://github.com/discourse/discourse.git
synced 2024-12-16 05:45:58 +08:00
22 lines
638 B
Ruby
22 lines
638 B
Ruby
|
class FixIncomingLinks < ActiveRecord::Migration
|
||
|
def up
|
||
|
execute "DROP INDEX incoming_index"
|
||
|
add_column :incoming_links, :post_id, :integer
|
||
|
remove_column :incoming_links, :updated_at
|
||
|
remove_column :incoming_links, :url
|
||
|
|
||
|
execute "UPDATE incoming_links l SET post_id = (
|
||
|
SELECT p.id FROM posts p WHERE p.topic_id = l.topic_id AND p.post_number = l.post_number
|
||
|
)"
|
||
|
|
||
|
execute "DELETE FROM incoming_links WHERE post_id IS NULL"
|
||
|
change_column :incoming_links, :post_id, :integer, null: false
|
||
|
|
||
|
add_index :incoming_links, :post_id
|
||
|
end
|
||
|
|
||
|
def down
|
||
|
raise ActiveRecord::IrreversibleMigration
|
||
|
end
|
||
|
end
|