2011-12-06 10 views
2

私はHerokuでアプリを実行する際にいくつか問題がありました。 SinatraとDatamapperを使用しています。完全なプロジェクトはここにあります:https://github.com/pixelwolf/phonedbHerokuのSinatra + Datamapperアプリ

私は、アプリケーションのエラーページを取得するURLに行くまで、私は、アプリケーションを展開すると、すべてうまくいって、問題が発生します。私はまた、heroku logsを実行しているから、ここでheroku db:push sqlite://database.db

ログをされている使用しSQLite3のデータベースをプッシュしています

`require': no such file to load -- dm-postgres-adapter 

あなたはHerokuの上のpostgresを使用のみできます。https://gist.github.com/1439777

+0

申し訳ありませんが、私は答えは分かりませんが、私はあなたのコードでマイナーな無関係なエラーを発見しました。 main.rbの74行目で、「email」のスペルが間違っています:email => params [:emial] – 585connor

答えて

3

エラーページにはラインを持っています。あなたはそれを何らかの方法で説明していない可能性が高いです。あなたはマシン上でsqliteを使って開発することができますが、すべてを動作させるためにいくつかの手配をする必要があります。また、sqliteまたはpostgresのみの機能を使用する必要はありません。

4

あなたはHerokuのウェブサイトからだったこの

DataMapper.setup(:default, ENV['DATABASE_URL'] || 'sqlite3://my.db') 

のようなラインとDataMapperのでデータベースを設定する必要があります。 http://devcenter.heroku.com/articles/databaseこれは、ローカルマシンでsqlite3を使用できるようにdatamapperを設定しますが、アプリケーションがそこで使用されるときにHerokuのpostgres DBに切り替えます。

また、Tom Andersonも正しく、dm-postgres-adapter gemをGemfileに追加する必要があります。私もpgの宝石を追加しましたが、それが必要かどうかは分かりません。