首页 > 解决方案 > 加载“sqlite3”Active Record 适配器时出错。缺少它所依赖的宝石?sqlite3 不是捆绑包的一部分。将它添加到您的 Gemfile 以供 heroku

问题描述

大家好,我不知道为什么,但我在部署时遇到了这个奇怪的错误。我已经为此花费了三个小时,但无法使其正常工作。它之前已经成功运行过多次,甚至在部署新应用程序的三个小时内运行一次。我不知道为什么我在 heroku 上遇到这个错误,而且只有 heroku。

宝石文件宝石文件

Heroku 错误heroku 错误

数据库.yml数据库.yml

如果有人有任何建议,我会全力以赴!

标签: ruby-on-railssqliteheroku

解决方案


@petertran98 SQLite 不适合在 Heroku 上运行。请参阅Heroku SQLite 在 Heroku 上的官方链接,他们建议使用 Postgres。

要将 SQLite 替换为 Postgres,您需要执行以下操作。

步骤 - 1:在您的 Gemfile 中gem 'sqlite3'替换为。gem 'pg'

步骤 - 2:在您的 database.yml 中替换adapter: sqlite3为。adapter: postgresql

现在尝试运行部署。它应该可以解决问题。如果您仍然面临一些问题,那么您可能需要根据您看到的错误执行以下操作之一。

如果没有使用部署脚本自动创建,您需要手动添加 Postgres。

heroku addons:create heroku-postgresql

或者如果您仍然看到 SQLite 错误,那么您可能需要删除 Gemfile.lock 文件并bundle install再次运行命令。


推荐阅读