2

続編とpostgresを備えたシンプルなherokuアプリがありました。しかし、私は得ました:

% heroku rake db:migrate
rake aborted!
LoadError: no such file to load -- sequel/adapters/postgresql
/app/.bundle/gems/ruby/1.9.1/gems/sequel-3.23.0/lib/sequel/core.rb:249:in `require'

ローカル ドライブに postgres.rb があります。フリープランを利用しています。

% heroku info
...
Dynos:          1
Workers:        0
Repo size:      9M
Slug size:      8M
Stack:          bamboo-mri-1.9.2
Data size:      (empty)
Addons:         Basic Logging, Shared Database 5MB


% heroku pg:info
=== kampanchi database SHARED_DATABASE_URL
4

2 に答える 2

4

Sequel は、postgres アダプターに常に「postgres」を使用してきました。アダプタ スキームとして「postgresql」を指定した場合、それは機能しません。Rails を使用している場合、Heroku は (「postgresql」を使用して) ActiveRecord 形式で database.yml ファイルを作成します。これが、rake タスクが取得しているものだと思います。Rails/Sequel 統合ツールを使用している場合は、その変換が処理されていないと思います。修正する必要があります。個人的には、Heroku が提供する DATABASE_URL 環境変数を使用して、手動でデータベース接続をセットアップします。

詳細については、 http://devcenter.heroku.com/articles/database#database_urlsを参照してください。

于 2011-05-24T23:34:25.090 に答える
0

Jeremyの応答を補足するために、Herokuは常に「postgres」を使用してきましたDATABASE_URL。に接続するとENV["DATABASE_URL"]、データベースが何であるかに関係なく機能するはずです。

于 2011-05-25T02:26:28.450 に答える