Ответ 1
Метод self.up верен. Используйте это для своего self.down:
remove_index :units, :column => :lesson_id
Я уже перенес таблицу, называемую единицами с несколькими столбцами. Мне было интересно, как мигрировать в отдельный "add_index" в эту таблицу, используя cmd. Правильно ли этот код:
class AddIndexToUnits < ActiveRecord::Migration
def self.up
add_index :units, :lesson_id
end
def self.down
remove :units
end
end
У меня такое чувство, что самозахват может быть неправильным, я не уверен.
Метод self.up верен. Используйте это для своего self.down:
remove_index :units, :column => :lesson_id
Почти
class AddIndexToUnits < ActiveRecord::Migration
def self.up
add_index :units, :lesson_id, :name=>'lesson_index'
end
def self.down
remove_index :units, 'lesson_index'
end
end
Чтобы удалить индекс, вы должны использовать remove_index
с той же спецификацией таблицы и столбца, что и self.up add_index
. Итак:
def self.down
remove_index :units, :lesson_id
end
Пример с несколькими столбцами:
def self.down
remove_index :units, [:lesson_id, :user_id]
end