我正在学习构建一个非常简单的rails应用程序的教程。我创建了一个简单的控制器看起来像这样用于简单视图的Ruby on Rails中的路由错误
class AnimalsController < ApplicationController
end
,我有意见称为动物包含一些基本的文本文件RHTML名为hello.rhtml一个文件夹里面。现在,当我启动服务器,就往
http://localhost:3000/animals/hello
我得到一个路由错误。我不确定我做错了什么?
我正在学习构建一个非常简单的rails应用程序的教程。我创建了一个简单的控制器看起来像这样用于简单视图的Ruby on Rails中的路由错误
class AnimalsController < ApplicationController
end
,我有意见称为动物包含一些基本的文本文件RHTML名为hello.rhtml一个文件夹里面。现在,当我启动服务器,就往
http://localhost:3000/animals/hello
我得到一个路由错误。我不确定我做错了什么?
不像一些框架,路由不会自动从存在于控制器中的方法创建的,需要在的config/routes.rb中
get "animals/hello" => "animals#hello"
你可以阅读有关路由here以下。
您可以在终端中输入rake routes
来查找当前项目的路线。
class AnimalsController < ApplicationController
def hello
end
end
此外,您还需要一个名为'hello'的控制器中的操作方法。
所以,你的控制器变为:
class AnimalsController < ApplicationController
def hello
end
end
然后结合Gazler的回答,路由错误应该消失。
如果你想获得从AnimalsController
可见然后wrtite所有方法:
match 'animals/:method', :controller => 'animals'
我得到“行动‘你好’无法找到AnimalsController”不太清楚还是 – 2012-01-16 21:22:16
尝试增加一个hello方法你控制器与'def你好;结束' – Gazler 2012-01-16 21:23:29
我很抱歉,但没有做任何事情。 – 2012-01-16 21:29:21