2011-06-30 36 views
0

我在清除Rails 3+的新路由系統時遇到問題。Rails 3路由 - 傳遞與以下不同的參數:id

我想匹配 「/:名稱」 到:控制器=>:型材:動作=>:顯示,:名稱=>名稱

如何實現這一點?

我試着用match "/:name" => "profiles#show"但這只是使用:名稱:ID ...

此致Joern。

回答

2

With match "/:name" => "profiles#show"這將觸發profiles控制器上的show操作。在該控制器實例中,您可以訪問來自params[:name]的匹配URL

我假設您試圖通過名稱而不是id獲取模型記錄,因此您必須修改show操作。例如,

def show 
    @profile = Profile.find_by_name(params[:name]) 
end 
+0

這就是我的期望和做的。 :/所以我的解決方案似乎是正確的,錯誤必須在其他地方 –