2012-07-08 77 views
0

我学习西纳特拉,我得到以下错误NoMethodError:未定义的方法<<为无:NilClass

Boot Error 

Something went wrong while loading recall.rb 
NoMethodError: undefined method `<<' for nil:NilClass 

/Users/nikhil/.rvm/gems/ruby-1.9.3-p194/gems/rack-flash-0.1.2/lib/rack/flash.rb:11:in `use' 
/Users/nikhil/.rvm/gems/ruby-1.9.3-p194/gems/shotgun-0.9/bin/shotgun:128:in `block (2 levels) in <top (required)>' 
/Users/nikhil/.rvm/gems/ruby-1.9.3-p194/gems/shotgun-0.9/lib/shotgun/loader.rb:104:in `instance_eval' 
/Users/nikhil/.rvm/gems/ruby-1.9.3-p194/gems/shotgun-0.9/lib/shotgun/loader.rb:104:in `block in assemble_app' 
/Users/nikhil/.rvm/gems/ruby-1.9.3-p194/gems/rack-1.4.1/lib/rack/builder.rb:51:in `instance_eval' 
/Users/nikhil/.rvm/gems/ruby-1.9.3-p194/gems/rack-1.4.1/lib/rack/builder.rb:51:in `initialize' 
/Users/nikhil/.rvm/gems/ruby-1.9.3-p194/gems/shotgun-0.9/lib/shotgun/loader.rb:103:in `new' 
/Users/nikhil/.rvm/gems/ruby-1.9.3-p194/gems/shotgun-0.9/lib/shotgun/loader.rb:103:in `assemble_app' 
/Users/nikhil/.rvm/gems/ruby-1.9.3-p194/gems/shotgun-0.9/lib/shotgun/loader.rb:86:in `proceed_as_child' 
/Users/nikhil/.rvm/gems/ruby-1.9.3-p194/gems/shotgun-0.9/lib/shotgun/loader.rb:31:in `call!' 
/Users/nikhil/.rvm/gems/ruby-1.9.3-p194/gems/shotgun-0.9/lib/shotgun/loader.rb:18:in `call' 
/Users/nikhil/.rvm/gems/ruby-1.9.3-p194/gems/shotgun-0.9/lib/shotgun/favicon.rb:12:in `call' 
/Users/nikhil/.rvm/gems/ruby-1.9.3-p194/gems/shotgun-0.9/lib/shotgun/static.rb:14:in `call' 
/Users/nikhil/.rvm/gems/ruby-1.9.3-p194/gems/rack-1.4.1/lib/rack/builder.rb:134:in `call' 
/Users/nikhil/.rvm/gems/ruby-1.9.3-p194/gems/rack-1.4.1/lib/rack/handler/webrick.rb:59:in `service' 
/Users/nikhil/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/webrick/httpserver.rb:138:in `service' 
/Users/nikhil/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/webrick/httpserver.rb:94:in `run' 
/Users/nikhil/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/webrick/server.rb:191:in `block in start_thread' 

我无法破译它的ID不指向任何我的源文件。

当我跟着教程的this part谈论通知和错误消息时,出现错误。 我的应用程序的主文件包括以下宝石。

require "sinatra" 
require "data_mapper" 
require "rack-flash" 
require "sinatra/redirect_with_flash" 

回答

2

您使用的是旧版本架闪光的不与机架的版本,您正在使用工作。抛出错误的线在机架闪光器本身内部,它试图改变一些已经改变的机架内部状态。

由于某种原因,该gem的最新版本被称为rack-flash3,这就是为什么安装机架闪光仍然会让您获得旧版宝石的原因。

+0

我已经安装了'rack-flash3'宝石。我应该对来源做出什么样的改变?我应该使用'rack-flash3'吗? – nikhil 2012-07-08 20:04:04

+0

需要新的宝石。不要以为你需要改变任何东西 – 2012-07-08 20:09:57

+0

谢谢我已经修复了require语句保持不变。 – nikhil 2012-07-08 20:16:44

相关问题