我對rails很新,但我已經完成了一些項目,包括Michael Hartl教程。 我正在構建一個存儲虛擬衣櫃的簡單應用程序。 我有2個表格 - 用戶和項目 - 用戶has_many項目和項目belongs_to用戶。 我成立了我的routes.rb文件中的下列具名的路線:Rails 3 - 命名的路由重定向到錯誤的控制器動作
match "/wardrobe", to: "items#index"
然而,當我嘗試去到我的瀏覽器/衣櫥,我得到一個沒有路由匹配錯誤如下:
No route matches {:action=>"show", :controller=>"items"}
我不知道爲什麼當我通過索引操作命名路由時,rails會通過show動作路由。 這些都是在我的上述ItemsController的相關行動:
def show
@item = Item.find(params[:id])
end
def index
@items = Item.all
end
重定向被稱爲上創建如下:
def create
@item = Item.new(params[:item])
if @item.save
flash[:success] = "Item added"
redirect_to wardrobe_path
else
render 'new'
end
end
耙路線提供以下功能:
wardrobe /wardrobe(.:format) items#index
所以,我知道路線存在。 任何人都可以解釋這裏發生了什麼?我該如何解決它?提前
嘗試改變: 匹配 「/衣櫥」,以 「項目#指數」 到 GET 「/衣櫥」,以 「項目#指數」 並使用新的錯誤調試。 – doug 2013-01-29 00:35:52
另外,什麼耙路線說? – doug 2013-01-29 00:43:29