A self reference can be useful to build a hierarchical tree. This can be achieved with add_reference
in a migration.
class AddParentPages < ActiveRecord::Migration[5.0]
def change
add_reference :pages, :pages
end
end
The foreign key column will be pages_id
. If you want to decide about the foreign key column name, you have to create the column first and add the reference after.
class AddParentPages < ActiveRecord::Migration[5.0]
def change
add_column :pages, :parent_id, :integer, null: true, index: true
add_foreign_key :pages, :pages, column: :parent_id
end
end