在我使用Rails的第一种方法中,我只创建了一个void SayController
和静态hello.rhtml
视图,但是当页面http://localhost:3000/say/hello
启动时返回一个像这样的路由错误:
No route matches [GET] "/say/hello"
Try running rake routes for more information on available routes.
Rails版本:3.2.6
答案 0 :(得分:1)
好像您没有为hello
文件添加config/routes.rb
{。}}。
YourApp::Application.routes.draw do
match 'say/hello' => 'say#hello', :as => :hello
end
这会将路线say/hello
与控制器say
(#
之前的部分)和操作hello
(#
之后的部分)匹配。
:as => :hello
使其成为route,因此您可以在应用中将其称为hello_path
。
错误消息告诉您运行rake routes
(来自控制台),它会在您的应用中显示named route。
答案 1 :(得分:0)
您应该在config/routes.rb
中有一些内容来定义该路线。试试:
match 'say/hello' => 'say#hello', :as => 'say_hello'
转到localhost:3000/say/hello
另请查看此文档:
答案 2 :(得分:0)
我认为,控制器:说和行动:你好
将以下内容添加到config / route.rb
get 'say/hello' => 'Say#hello'