2010-06-27 109 views
0

我已经在过去成功地创建了控制器,但突然间我发现了一个奇怪的错误。我这样做:当我尝试生成Ruby on Rails控制器时,出现了什么错误?

ruby script/generate controller Request 

和我收到此错误信息:

/usr/local/lib/ruby/gems/1.8/gems/actionpack-2.3.5/lib/action_controller/routing/builder.rb:175:in `build': Illegal route: the :controller must be specified! (ArgumentError) 
    from /usr/local/lib/ruby/gems/1.8/gems/actionpack-2.3.5/lib/action_controller/routing/route_set.rb:309:in `add_route' 
    from /usr/local/lib/ruby/gems/1.8/gems/actionpack-2.3.5/lib/action_controller/routing/route_set.rb:317:in `add_named_route' 
    from /usr/local/lib/ruby/gems/1.8/gems/actionpack-2.3.5/lib/action_controller/routing/route_set.rb:57:in `method_missing' 
    from /Users/ben/rails_projects/talk/config/routes.rb:55 
    from /usr/local/lib/ruby/gems/1.8/gems/actionpack-2.3.5/lib/action_controller/routing/route_set.rb:226:in `draw' 
    from /Users/ben/rails_projects/talk/config/routes.rb:1 
    from /usr/local/lib/ruby/gems/1.8/gems/activesupport-2.3.5/lib/active_support/dependencies.rb:145:in `load_without_new_constant_marking' 
    from /usr/local/lib/ruby/gems/1.8/gems/activesupport-2.3.5/lib/active_support/dependencies.rb:145:in `load' 
    from /usr/local/lib/ruby/gems/1.8/gems/activesupport-2.3.5/lib/active_support/dependencies.rb:521:in `new_constants_in' 
    from /usr/local/lib/ruby/gems/1.8/gems/activesupport-2.3.5/lib/active_support/dependencies.rb:145:in `load' 
    from /usr/local/lib/ruby/gems/1.8/gems/actionpack-2.3.5/lib/action_controller/routing/route_set.rb:286:in `load_routes!' 
    from /usr/local/lib/ruby/gems/1.8/gems/actionpack-2.3.5/lib/action_controller/routing/route_set.rb:286:in `each' 
    from /usr/local/lib/ruby/gems/1.8/gems/actionpack-2.3.5/lib/action_controller/routing/route_set.rb:286:in `load_routes!' 
    from /usr/local/lib/ruby/gems/1.8/gems/actionpack-2.3.5/lib/action_controller/routing/route_set.rb:266:in `reload!' 
    from /usr/local/lib/ruby/gems/1.8/gems/rails-2.3.5/lib/initializer.rb:537:in `initialize_routing' 
    from /usr/local/lib/ruby/gems/1.8/gems/rails-2.3.5/lib/initializer.rb:188:in `process' 
    from /usr/local/lib/ruby/gems/1.8/gems/rails-2.3.5/lib/initializer.rb:113:in `send' 
    from /usr/local/lib/ruby/gems/1.8/gems/rails-2.3.5/lib/initializer.rb:113:in `run' 
    from /Users/ben/rails_projects/talk/config/environment.rb:9 
    from /usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require' 
    from /usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require' 
    from /usr/local/lib/ruby/gems/1.8/gems/rails-2.3.5/lib/commands/generate.rb:1 
    from /usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require' 
    from /usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require' 

关于如何解决此问题的任何想法?谢谢阅读。

+0

我注意到你的routes.rb页面在跟踪上市公司 - 中有什么,看起来可疑? – mportiz08 2010-06-27 06:03:48

+0

就是这样!我不知何故错过了routes.rb中的一半完成代码行,这导致了问题。谢谢!如果您提交答案,我会将其标记为正确 – ben 2010-06-27 06:09:39

回答

1

我不知道它是什么事,但在你的routes.rb似乎导致错误

1

我相信Request是一个保留字,因此您可以将其用作控制器的名称。

您是否尝试过使用其他名称生成另一个控制器以查看是否发生相同的错误?

+0

是的,我尝试了一些其他名称,并发生了相同的错误。 – ben 2010-06-27 05:59:01

+0

哦,真的,我可以生成请求控制器。 – PeterWong 2010-06-27 06:07:46

+0

我已经解决了这个问题,但我认为最好不要使用请求。谢谢。 – ben 2010-06-27 06:10:18

相关问题