我试图将我的应用程序部署到Heroku,我以前在我的
Windows机器上完成了,现在我正在使用mac.
我试图首次使用Postgresql.
我的Gemfile中有以下内容:
gem 'pg'
编辑:
AndrewDavis-OSX:lunchBox ardavis$rvm list rvm rubies => ruby-1.9.2-p180 [ x86_64 ] AndrewDavis-OSX:lunchBox ardavis$heroku rake db:migrate rake aborted! /app/config/initializers/session_store.rb:3: Syntax error,unexpected ':',expecting $end App::Application.config.session_store :cookie_store,key: '_app_session' ^ (See full trace by running task with --trace) (in /app)
如你所见,我正在运行ruby 1.9.2.我的英雄迁移有错误.
编辑2:
刚刚创建了一个全新的rails应用程序使用Rails 3.1.rc1.我设置gemfile包含
组:生产做
宝石’therubyracer-heroku’,’0.8.1.pre3′
宝石’
结束
我做了一个快速的git init,提交,然后’heroku创建’和’git推英雄主人’.那些都工作很好.但是问题是当我尝试’heroku rake db:migrate’时.我收到与上面看到的相同的错误.
TEMP FIX编辑:
所以…如果我更改我的config / initializers / session_store.rb从
App::Application.config.session_store :cookie_store,key: '_app_session'
至
App::Application.config.session_store :cookie_store,:key => '_app_session'
并从中更改我的config / initializers / wrap_parameters.rb
ActionController::Base.wrap_parameters format: [:json]
至
ActionController::Base.wrap_parameters :format => [:json]
那么我可以做’heroku rake db:migrate’就好了.任何人都在意解释为什么这样做是以原始方式在本地工作的,没有任何修改冒号/散列?原来的方式是从“rails new myApp”中生成的默认值
解决方法
需要迁移Heroku堆栈,您可以运行此命令来执行此操作:
heroku stack:migrate bamboo-mri-1.9.2
我在本地运行1.9.2,这就是为什么它在本地工作.但在Heroku,它运行1.8.7.