我正在學習構建一個非常簡單的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