Ruby Rails: ActiveRecord::PendingMigrationError



当尝试将Rails应用程序部署到Railway时,我收到以下错误:

ActiveRecord::PendingMigrationError

Migrations are pending. To resolve this issue, run:
bin/rails db:migrate RAILS_ENV=development
You have 1 pending migration:
20221102234102_create_contacts.rb

我可以点击消息下方的一个按钮,让应用程序在线,上面写着";运行挂起的迁移";。我想找到一种方法,在每次部署时自动运行迁移。

我已经尝试了Getting中列出的所有内容:;正在等待迁移;run';bin/rake-db:migrate RAILS_ENV=development';以解决此问题"在克隆和迁移项目之后

所以我运行了:

rm -f db/*.sqlite3
rake db:create
RAILS_ENV=development bundle exec rake db:migrate
rails s -e development

没有成功。

";20221102234102_创建_;文件如下:

class CreateContacts < ActiveRecord::Migration[7.0]
def change
create_table :contacts do |t|
t.string :name
t.string :email
t.text :comments
t.timestamps
end
end
end

我对网络开发完全陌生,一直在关注免费的训练营视频,但他们正在使用Heroku,但没有成功,由于Heroku将不再免费,我想我应该试试Railway。

Railway将使用Procfile来启动您的服务,因此确保迁移运行的一个简单方法就是使用它。

在应用程序的根文件夹中,添加一个名为Procfile(无扩展名(的文件

以下是我的一个应用程序的示例:

web: /bin/bash -l -c "rake db:migrate && bundle exec puma -C config/puma.rb"

这首先运行rake db:migrate,然后使用我在config/puma.rb中定义的配置启动puma服务器

此命令在成功生成后运行一次。

相关内容

  • 没有找到相关文章