2012-01-23 107 views
1

好吧, 我一直在Sinatra的小webapp上工作。周末休息后,我遇到了一个奇怪的问题,并且无法追踪到它。应用程序在Heroku上工作,但不再在本地工作?

我的应用程序如此托管在Heroku上,工作得很好。但是,现在该应用程序不再适用于本地。即使从Heroku克隆源头也会产生同样的问题。

== Sinatra/1.3.2 has taken the stage on 4567 for development with backup from Thin 
>> Thin web server (v1.3.1 codename Triple Espresso) 
>> Maximum connections set to 1024 
>> Listening on 0.0.0.0:4567, CTRL+C to stop 
!! Unexpected error while processing request: undefined method `<<' for nil:NilClass 

我试图让这三个不同的计算机(英特尔macmini,霹雳的MacBook Pro,& G4迷你)都产生了同样的错误再次运行。

我已经走了我的代码寻找任何未封闭或不完整的代码&找不到任何东西。即使使用git恢复到已知的工作版本也会产生相同的错误。

任何帮助都将不胜感激,因为我对红宝石的知识仍然相当有限。如果有人有兴趣/愿意看我的代码,我愿意分享。

可能已经改变的唯一的事情:我更新了我的开发机器上更新的宝石。但我不明白这会如何影响其他两台机器的情况。

+0

尝试git grep“<<”以查看您是否在某处引入了此行。 – three

+0

也可以检查更新的机架版本是否改变了任何东西。你可能想在你的Gemfile中恢复到1.3。 – three

+0

这是问题。我没有注意到机架是最新的。谢谢您的意见。 –

回答

2

Here's a discussion与Sinatra在另一个应用程序中发生同样的错误。讨论了一个修补程序,并找出一个解决方法是将Rack版本从1.4.0回滚到1.3.6。

+0

太棒了!这正是问题所在。非常感谢! –

相关问题