|
- class CreatePostImplications < ActiveRecord::Migration[8.0]
- def up
- create_table :post_implications, primary_key: [:post_id, :parent_post_id] do |t|
- t.references :post, null: false, foreign_key: true, index: false
- t.references :parent_post, null: false, foreign_key: { to_table: :posts }
- t.timestamps
-
- t.check_constraint 'post_id <> parent_post_id',
- name: 'chk_post_implications_no_self'
- end
-
- add_column :post_versions, :parent_post_ids, :text, null: false, after: :parent_id
- remove_column :post_versions, :parent_id, :bigint
- remove_reference :posts, :parent, foreign_key: { to_table: :posts }
- end
-
- def down
- add_reference :posts, :parent, foreign_key: { to_table: :posts }, after: :thumbnail_base
- add_column :post_versions, :parent_id, :bigint, after: :post_id
- remove_column :post_versions, :parent_post_ids, :text
-
- drop_table :post_implications
- end
- end
|