rails 3 rake routes不工作,没有路由显示为输出

时间:2012-02-09 23:33:17

标签: ruby-on-rails-3 routes rake bundler

执行时

bundle exec rake routes --trace

输出是:

NOTE: Gem.source_index is deprecated, use Specification. It will be removed on or after 2011-11-01.
Gem.source_index called from /usr/local/rvm/gems/ruby-1.9.2-p290@global/gems/bundler-1.0.10/lib/bundler/shared_helpers.rb:3.
NOTE: Gem.source_index is deprecated, use Specification. It will be removed on or after 2011-11-01.
Gem.source_index called from /usr/local/rvm/gems/ruby-1.9.2-p290@global/gems/bundler-1.0.10/lib/bundler/source.rb:162.
NOTE: Gem::SourceIndex#each is deprecated with no replacement. It will be removed on or after 2011-11-01.
Gem::SourceIndex#each called from /usr/local/rvm/gems/ruby-1.9.2-p290@global/gems/bundler-1.0.10/lib/bundler/source.rb:162.
NOTE: Gem.source_index is deprecated, use Specification. It will be removed on or after 2011-11-01.
Gem.source_index called from /usr/local/rvm/gems/ruby-1.9.2-p290@global/gems/bundler-1.0.10/lib/bundler/shared_helpers.rb:84.
NOTE: Gem.source_index is deprecated, use Specification. It will be removed on or after 2011-11-01.
Gem.source_index called from /usr/local/rvm/gems/ruby-1.9.2-p290@global/gems/bundler-1.0.10/lib/bundler/shared_helpers.rb:3.
NOTE: Gem.source_index is deprecated, use Specification. It will be removed on or after 2011-11-01.
Gem.source_index called from /usr/local/rvm/gems/ruby-1.9.2-p290@global/gems/bundler-1.0.10/lib/bundler/source.rb:162.
NOTE: Gem::SourceIndex#each is deprecated with no replacement. It will be removed on or after 2011-11-01.
Gem::SourceIndex#each called from /usr/local/rvm/gems/ruby-1.9.2-p290@global/gems/bundler-1.0.10/lib/bundler/source.rb:162.
NOTE: Gem.source_index is deprecated, use Specification. It will be removed on or after 2011-11-01.
Gem.source_index called from /usr/local/rvm/gems/ruby-1.9.2-p290@global/gems/bundler-1.0.10/lib/bundler/shared_helpers.rb:84.
WARNING: 'require 'rake/rdoctask'' is deprecated.  Please use 'require 'rdoc/task' (in RDoc 2.4.2+)' instead.
at /usr/local/rvm/gems/ruby-1.9.2-p290/gems/rake-0.9.2.2/lib/rake/rdoctask.rb
** Invoke routes (first_time)
** Invoke environment (first_time)
** Invoke threadsafe:disabled (first_time)
** Execute threadsafe:disabled
** Execute environment
** Execute routes

这是我的config / routes.rb文件

 Rails_app::Application.routes.draw do

  match '/' => 'pages#show', :id => '1-welcome-page'
  match       ':controller(/:action(/:id(.:format)))'

end

这是我的宝石列表

abstract (1.0.0)
actionmailer (3.0.3)
actionpack (3.0.3)
activemodel (3.0.3)
activerecord (3.0.3)
activeresource (3.0.3)
activesupport (3.0.3)
arel (2.0.10)
builder (3.0.0, 2.1.2)
bundler (1.0.10 ruby)
cgi_multipart_eof_fix (2.5.0)
daemons (1.1.0, 1.0.10)
erubis (2.6.6)
eventmachine (0.12.10)
fastthread (1.0.7)
gem_plugin (0.2.3)
i18n (0.6.0)
kgio (2.2.0)
mail (2.2.19)
mime-types (1.17.2)
mongrel (1.2.0.pre2)
mysql2 (0.2.7)
polyglot (0.3.3)
rack (1.2.5)
rack-mount (0.6.14)
rack-test (0.5.7)
rails (3.0.3)
railties (3.0.3)
rake (0.9.2.2)
rmagick (2.13.1)
thin (1.2.7)
thor (0.14.6)
treetop (1.4.10)
tzinfo (0.3.31)
unicorn (3.4.0)
xmpp4r (0.5)

有谁知道为什么没有产生路线?

2 个答案:

答案 0 :(得分:0)

根据这个问题getting error while creating rails app?,你应该更新你的捆绑版本

答案 1 :(得分:0)

哇,我终于让路线运转了。我认为问题的一部分是该应用程序是一个已转换为Rails 3应用程序的Rails 2应用程序。无论如何我做的是:

 1.  Made a simple Rails 3 app, and ran 'bundle exec rake routes' and I could see that that worked, so I knew the current set of libraries wasn't the problem.
 2.  Then I made the config files the same for both apps.
 3.  Also made the 'config/initializer' files the same for both apps.
 4.  Also made the 'config/environments/production.rb' file the same for both apps.
 5.  And that did the trick!

一旦我有一个简单的Rails 3应用程序适用于'rake routes',我之前尝试在两个应用程序的rake路由上运行调试器:

 bundle exec rdebug rake routes

并逐步完成了大量的代码,看看这两个应用程序采用了不同的路径,但由于这两个应用程序之间有很多不同,我无法弄清楚出现问题的地方。

无论如何,我希望这有助于遇到同样问题的人。