У меня были постоянные проблемы с миграцией базы данных в rails через rake db:migrate.
Моя миграция в настоящее время выглядит так:
class CreateArticles < ActiveRecord::Migration
def change
create_table :articles do |t|
t.string :title
t.text :subtitle
t.string :slug
t.text :body
t.integer :publish, limit: 1, default: 0
t.timestamps
end
end
end
Однако, если я когда-нибудь удалю из этого столбец или даже добавлю или изменю его, команда rake db:migrate ничего не сделает. Единственный способ, которым я могу его перенести, иногда запускает что-то вроде:
rake db:migrate VERSION=20080906120000
Но даже это темпераментно, поэтому большую часть времени мне нужно сбросить базу данных, используя
db:drop
db:create
затем снова запустите миграцию в обычном режиме. в основном db: migrate работает только в первый раз после удаления и создания базы данных.
Я также пробовал откат перед запуском миграции.
Это далеко от идеала, поэтому я был бы признателен за любую помощь.
(Я понимаю, что есть похожие вопросы, но все их проблемы решаются после сброса БД)