Ruby on rails Rails 3部署到Heroku语法错误,意外$end

Ruby on rails Rails 3部署到Heroku语法错误,意外$end,ruby-on-rails,ruby-on-rails-3,deployment,heroku,syntax-error,Ruby On Rails,Ruby On Rails 3,Deployment,Heroku,Syntax Error,在本地开发环境中成功测试了我的“alpha”Rails 3应用程序后,我将其推送到Heroku(Cedar)进行现场测试。推送成功,但应用程序在启动时崩溃,出现以下错误: : => Booting WEBrick : => Ctrl-C to shutdown server : /app/vendor/bundle/ruby/1.9.1/gems/activesupport-3.2.3/lib/active_support/dependencies.rb:251:in `requ

在本地开发环境中成功测试了我的“alpha”Rails 3应用程序后,我将其推送到Heroku(Cedar)进行现场测试。推送成功,但应用程序在启动时崩溃,出现以下错误:

: => Booting WEBrick
: => Ctrl-C to shutdown server  
: /app/vendor/bundle/ruby/1.9.1/gems/activesupport-3.2.3/lib/active_support/dependencies.rb:251:in `require':   /app/app/controllers/dives_controller.rb:50: invalid multibyte char (US-ASCII) (SyntaxError)
: /app/app/controllers/dives_controller.rb:50: syntax error, unexpected $end
: Exiting
我已经检查了意外字符和缺少的结束语句,但似乎找不到任何字符。据我所知,我没有使用任何多语言字符

下面是我的一些文件,包括:Gemfile、Gemfile.lock、database.yml、dive_controller.rb


这可能与使用postgres而没有在我的database.yml中正确指定它有关吗?

我不太清楚为什么会这样,但我在我的dive_controller.rb中删除了以下几行,应用程序现在已正确部署:

#@user = User.where(:facebook_id => current_user.identifier) 
#@dive = @user.dives.create(params[:dive])
#@dive = Dive.new(params[:dive])

如果查看的
第50行和第51行,您会注意到前面出现了一些奇怪的空白字符(它们在
github
输出中突出显示)。我有一种感觉就是这些角色造成了这个问题


它们可能是由于误按键盘上的一些随机键而出现的。只需删除它们,并用
空格替换它们

Gist文件中以红色突出显示的空格为空。开发者的噩梦。
您可以要求IDE或文本编辑器以不同的字符显示它们


例如,
set listchars=trail:◃,nbsp:•
告诉VIM显示•非中断空格和◃ 对于尾随空格

你在使用数据库吗?如果是这样,你需要在heroku上使用postgres。你确定你在gist中上传的控制器版本与你上传到heroku的版本相同吗?谢谢。这正是问题所在。非常感谢。