2014-04-21 97 views
1

我正在玩弄使用獨角獸和導軌的教程。我對rails完全陌生,爲了本教程的目的,我爲該項目所做的所有工作都是bundle exec rails new rails-starter,不需要進一步修改應用程序。ActionController :: RoutingError(沒有路線匹配[GET]「/」):

當我運行bundle exec unicorn -c config/unicorn.rb -E production我在瀏覽器中得到的消息:

The page you were looking for doesn't exist. You may have mistyped the address or the page may have moved.

日誌顯示:

ActionController::RoutingError (No route matches [GET] "/"): 
    /home.rbenv/versions/2.0.0-p0/lib/ruby/gems/2.0.0/gems/actionpack-4.0.4/lib/action_dispatch/middleware/debug_exceptions.rb:21:in `call' 
    /home.rbenv/versions/2.0.0-p0/lib/ruby/gems/2.0.0/gems/actionpack-4.0.4/lib/action_dispatch/middleware/show_exceptions.rb:30:in `call' 
    /home.rbenv/versions/2.0.0-p0/lib/ruby/gems/2.0.0/gems/railties-4.0.4/lib/rails/rack/logger.rb:38:in `call_app' 
    /home.rbenv/versions/2.0.0-p0/lib/ruby/gems/2.0.0/gems/railties-4.0.4/lib/rails/rack/logger.rb:20:in `block in call' 
    /home.rbenv/versions/2.0.0-p0/lib/ruby/gems/2.0.0/gems/activesupport-4.0.4/lib/active_support/tagged_logging.rb:68:in `block in tagged' 
    /home.rbenv/versions/2.0.0-p0/lib/ruby/gems/2.0.0/gems/activesupport-4.0.4/lib/active_support/tagged_logging.rb:26:in `tagged' 
    /home.rbenv/versions/2.0.0-p0/lib/ruby/gems/2.0.0/gems/activesupport-4.0.4/lib/active_support/tagged_logging.rb:68:in `tagged' 
    /home.rbenv/versions/2.0.0-p0/lib/ruby/gems/2.0.0/gems/railties-4.0.4/lib/rails/rack/logger.rb:20:in `call' 
    /home.rbenv/versions/2.0.0-p0/lib/ruby/gems/2.0.0/gems/actionpack-4.0.4/lib/action_dispatch/middleware/request_id.rb:21:in `call' 
    /home.rbenv/versions/2.0.0-p0/lib/ruby/gems/2.0.0/gems/rack-1.5.2/lib/rack/methodoverride.rb:21:in `call' 
    /home.rbenv/versions/2.0.0-p0/lib/ruby/gems/2.0.0/gems/rack-1.5.2/lib/rack/runtime.rb:17:in `call' 
    /home.rbenv/versions/2.0.0-p0/lib/ruby/gems/2.0.0/gems/activesupport-4.0.4/lib/active_support/cache/strategy/local_cache.rb:83:in `call' 
    /home.rbenv/versions/2.0.0-p0/lib/ruby/gems/2.0.0/gems/rack-1.5.2/lib/rack/sendfile.rb:112:in `call' 
    /home.rbenv/versions/2.0.0-p0/lib/ruby/gems/2.0.0/gems/railties-4.0.4/lib/rails/engine.rb:511:in `call' 
    /home.rbenv/versions/2.0.0-p0/lib/ruby/gems/2.0.0/gems/railties-4.0.4/lib/rails/application.rb:97:in `call' 
    /home.rbenv/versions/2.0.0-p0/lib/ruby/gems/2.0.0/gems/unicorn-4.8.2/lib/unicorn/http_server.rb:572:in `process_client' 
    /home.rbenv/versions/2.0.0-p0/lib/ruby/gems/2.0.0/gems/unicorn-4.8.2/lib/unicorn/http_server.rb:666:in `worker_loop' 
    /home.rbenv/versions/2.0.0-p0/lib/ruby/gems/2.0.0/gems/unicorn-4.8.2/lib/unicorn/http_server.rb:521:in `spawn_missing_workers' 
    /home.rbenv/versions/2.0.0-p0/lib/ruby/gems/2.0.0/gems/unicorn-4.8.2/lib/unicorn/http_server.rb:140:in `start' 
    /home.rbenv/versions/2.0.0-p0/lib/ruby/gems/2.0.0/gems/unicorn-4.8.2/bin/unicorn:126:in `<top (required)>' 
    /home.rbenv/versions/2.0.0-p0/bin/unicorn:23:in `load' 
    /home.rbenv/versions/2.0.0-p0/bin/unicorn:23:in `<main>' 

但是,如果我只是通過bundle exec rails server我可以運行Rails應用程序通過[IP]:3000成功訪問

我懷疑這個錯誤是與ActionController::RoutingError (No route matches [GET] "/"):有關的,但是我缺乏鐵軌知識來弄清楚這個問題。

回答

6

您需要在routes.rb文件中設置根路由。

root :to => 'index#index' 

其中第一個索引是控制器名稱(索引控制器)和第二索引在IndexController動作的名稱。

+0

我將上面的代碼行添加到'routes.rb'中,但是錯誤仍然存​​在。 – kaizenCoder

+0

重新啓動你的服務器.. – emaillenin

+0

好吧,現在我有以下錯誤:ActionController :: RoutingError(未初始化的常量IndexController):' – kaizenCoder

相關問題