Rails: создать каскадную миграцию таблицы drop table Как заставить TAB CASCADE DROP TABLE в миграции Rails 3.2? Есть ли возможность перейти к drop_table ( "table_name" )? Ответ 1 Вы всегда можете запустить raw SQL в процессе миграции. MYSQL: execute "DROP TABLE #{:table_name} CASCADE CONSTRAINTS PURGE" PostgreSQL: execute "DROP TABLE #{:table_name} CASCADE" Ответ 2 В Rails 4 вы можете сделать следующее: drop_table :accounts, force: :cascade Ответ 3 Поместите файл в каталог инициализаторов, который называется postgres.rb, затем сделал. Это все равно работает для рельсов 4.1. module ActiveRecord module ConnectionAdapters # :nodoc: module SchemaStatements def drop_table(table_name, options = {}) execute "DROP TABLE #{quote_table_name(table_name)} CASCADE" end end end end
Ответ 1 Вы всегда можете запустить raw SQL в процессе миграции. MYSQL: execute "DROP TABLE #{:table_name} CASCADE CONSTRAINTS PURGE" PostgreSQL: execute "DROP TABLE #{:table_name} CASCADE"
Ответ 3 Поместите файл в каталог инициализаторов, который называется postgres.rb, затем сделал. Это все равно работает для рельсов 4.1. module ActiveRecord module ConnectionAdapters # :nodoc: module SchemaStatements def drop_table(table_name, options = {}) execute "DROP TABLE #{quote_table_name(table_name)} CASCADE" end end end end