没有路线匹配[GET]“/”

时间:2012-10-14 09:32:53

标签: ruby-on-rails ruby ruby-on-rails-3 ruby-on-rails-3.2

我是rails的新手所以听起来很天真。我收到了这个错误

No route matches [GET] "/"

这是我的routes.rb

MyApp::Application.routes.draw do
    match 'welcome/contact' => 'welcome#index'
end

这是我的控制器

class WelcomeController < ApplicationController
   def index
      redirect_to :action => :contact
   end
   def contact

   end
end

我的app / view / welcome /中有一个contact.html.erb。我做错了什么?

4 个答案:

答案 0 :(得分:3)

我不明白你想做什么。但我认为您希望将欢迎/联系视图作为索引页面,如果这是正确的,您只需更改您的routes.rb文件,如下所示:

root to: 'welcome#contact'

,您必须从公用文件夹中删除index.html文件。

另一方面,您可以阅读更多铁路路线here

答案 1 :(得分:0)

您需要为控制器中的CRUD操作之外的操作创建路径。这将解决所有操作的问题。

match ':controller(/:action)'

答案 2 :(得分:0)

您要做的是RENDER联系页面,而不是重定向到另一个控制器和操作。

只需将联系人视图中的代码放入app/views/welcome/index.html.erb文件,然后愉快地生活。

答案 3 :(得分:0)

您需要在 WelcomeController

中添加联系操作
class WelcomeController < ApplicationController
  def index
     redirect_to :action => :contact
  end

  def contact
  end
end