Я видел этот вопрос, опубликованный несколько раз, и решение всегда состоит в том, чтобы удалить базу данных и воссоздать ее. У меня есть данные в моей базе данных, и поэтому я не хочу этого делать.
Схема:
create_table "users", force: :cascade do |t|
t.string "email", default: "", null: false
t.string "encrypted_password", default: "", null: false
t.string "reset_password_token"
t.datetime "reset_password_sent_at"
t.datetime "remember_created_at"
t.datetime "created_at", null: false
t.datetime "updated_at", null: false
t.string "product_id"
end
Мой второй до последнего файл миграции:
class AddProductIdToUsers < ActiveRecord::Migration[5.2]
def change
add_column :users, :product_id, :string
end
end
У меня нет другого файла миграции, который создает столбец product_id
в моей текущей ветви.
У меня есть несколько веток с различной схемой базы данных. Мне интересно, если это вызвало проблему. Ветвь, которая могла создать product_id
, доступна только для справки. Он не будет объединен с мастером.
Как мне исправить эту проблему? Я пробовал:
rake db:rollback step=3
rake db:migrate
но это не сработало.