2012-03-05 73 views
2

當前父控制器我有用戶嵌套資源:檢查嵌套資源

resources :users do 
    resources :reservations 
end 

在我的控制器動作,我可以通過使用controller.controller_name得到當前的控制器名。因此,在用戶顯示操作中,controller.controller_name返回「用戶」。同樣,在預訂顯示操作中,它返回「預訂」。

但是當我是一個像「http:// mywesite/users /:id/mutations」這樣的嵌套資源路由時,我想獲取嵌套資源的父控制器,在這種情況下是「users」。有什麼方法可以使用控制器屬性或路由檢查器來檢索?我不是我的網址正則表達式的粉絲。

我可以檢查我的params [:user_id],但這可能容易出錯嗎?我可能有一個註冊控制器,其中可以設置:user_id。

我想擁有這個父資源的原因是因爲我想在我的佈局中創建一個搜索表單,僅噹噹前操作與用戶有關時,在用戶控制器或用戶的嵌套資源控制器中執行的所有操作。

回答