1

我安装了水龙头。我收到以下错误。这是我第一次从 Heroku 拉出这样的内容,所以我不确定确切的格式

$ heroku db:pull postgres://postgres:@localhost/prod_20120717

 !    Taps Load Error: cannot load such file -- sqlite3
 !    You may need to install or update the taps gem to use db commands.
 !    On most systems this will be:
 !    
 !    sudo gem install taps

prod_20120717在 postgres 中创建了一个空来接收数据,但问题似乎是 taps 正在寻找 sqlite3,而不是 postgres。

我的 postgres 用户是 postgres,没有密码。

我的 database.yml 文件只定义了 postgres 适配器。

这似乎是适配器名称问题。我也在我拥有postgresql的两个地方都试过了postgres

4

3 回答 3

5

只是预感,但我认为 sqlite 是水龙头的要求:

https://github.com/ricardochimal/taps/blob/master/lib/taps/cli.rb第10行:

require 'sqlite3'

我不认为这与您的实际应用程序有关,但更多的是水龙头本身的工作原理,也许安装 gem 并从那里开始?

于 2012-07-17T14:36:04.607 回答
1

答案是我实际上没有安装 sqlite3(我在 Mac 上,我的应用程序只使用 postgres),我必须安装它(sqlite3)。

[sudo] gem install sqlite3

我的 Gemfile 中不需要它,我只需要在我的机器上安装它。

于 2012-07-17T14:39:27.163 回答
0

你有这样的gemfile设置吗?

group :production do
  gem 'pg'
end

group :development, :test do
  gem 'sqlite3'
end
于 2012-07-17T14:20:22.200 回答