Heroku上的Sinatra + Datamapper应用程序

时间:2011-12-06 20:20:11

标签: ruby heroku sinatra datamapper

我在Heroku上运行应用时遇到了一些问题。它使用Sinatra和Datamapper。完整的项目在这里:https://github.com/pixelwolf/phonedb

当我部署应用程序时出现问题,一切顺利,直到我转到网址,我收到“应用程序错误”页面。我还使用heroku db:push sqlite://database.db

推送SQLite3数据库

以下是运行heroku logshttps://gist.github.com/1439777

的日志

2 个答案:

答案 0 :(得分:4)

您必须使用类似

的行在datamapper中配置数据库
DataMapper.setup(:default, ENV['DATABASE_URL'] || 'sqlite3://my.db')

那是来自heroku的网站。 http://devcenter.heroku.com/articles/database这将配置datamapper以继续允许您在本地计算机上使用sqlite3,但在应用程序使用时切换到Heroku的postgres DB。

另外,Tom Anderson是正确的,你需要将dm-postgres-adapter gem添加到你的Gemfile中。我也添加了pg gem,但我不确定是否有必要。

答案 1 :(得分:3)

错误页面包含以下行:

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

你只能在he​​roku上使用postgres。所以你可能不会以某种方式解释这一点。你可以在你的机器上使用sqlite进行开发,但是你需要安排一些东西才能使它全部工作,而且你不需要使用任何sqlite或postgres功能。