我是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。我做错了什么?
答案 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