Почему миграция не работает

#ruby-on-rails #ruby #migration

#ruby-on-rails #ruby #миграция

Вопрос:

У меня есть migration AddAuthenticableToUser. (rake db: migrate: up VERSION = ..) работает нормально, но когда я пытаюсь откатить миграцию (rake db:migrate: down VERSION = ..), это не работает. Какие-либо ошибки или предупреждения. Не могли бы вы помочь мне с этим?

 def self.up
  change_table :users do |t|
    t.token_authenticatable
  end
  add_index :users, :authentication_token, :unique => true
end

def self.down
  remove_index :users, :authentication_token                                                                                                                      
  remove_column :users, :authentication_token
end                                                                                                                                                                                                                                                                                                                                         
  

Комментарии:

1. ошибок нет? и что это за версия rails?

Ответ №1:

В этом должен быть фокус. Я думаю, вы назвали свою таблицу token_authenticatable, а затем попытались удалить authentication_token.

 def self.up
  create_table :reviews do |t|
    t.column :authentication_token
  end
  add_index :users, :authentication_token, :unique => true
end

def self.down
  remove_index :users, :authentication_token                                                                                                                      
  remove_column :users, :authentication_token
end