喂 我担心我应该问一个菜鸟问题:
将我的应用推送到heroku之后。我得到了没有数据库的错误
这是我使用的命令
heroku rake db:migrate
我的应用可以在本地运行没有问题,但我只注意到开发中的数据库文件。
我的测试环境只使用rails server
和localhost:3000
任何人都告诉我如何在heroku中以生产模式创建数据库。
由于
这是heroku日志文件:
这是日志
开始GET“/鼓手/ 1” 221.9.247.14于12月18日星期六06:17:40 -0800 2010由DrummersController处理#show as HTML 参数:{“id”=>“1”}已完成 167ms
ActiveRecord :: RecordNotFound(不能 找到ID = 1的鼓手: 应用程序/控制器/ drummers_controller.rb:11:在 `秀“
我认为可能是由于datebase,配置文件,我在本地测试中使用sqlite3,并且所有迁移文件都是开发前缀,
答案 0 :(得分:8)
它并没有告诉你没有数据库。
它告诉你它找不到特定的记录
(Couldn't find Drummer with ID=1):
您的代码可能正在执行Drummer.find(1)
并且在您的生产环境中不存在。
推荐你:
答案 1 :(得分:3)
Heroku为部署到它的每个应用程序创建一个数据库(无需运行heroku rake db:create
。以下是您应该使用的命令将Rails应用程序部署到Heroku:
git init
git add .
git commit -m "initial import"
heroku create
git push heroku master
heroku rake db:migrate
heroku open
答案 2 :(得分:-1)
我相信如果根据Docs没有生产,Heroku会在部署时为您创建一个新的database.yml。