2015-05-29 53 views
4

目前在我的路線,我有:如何刪除routes.rb中產生的前綴PARAMS路徑

# USER RESOURCES 
    resources :users do 
    resources :repositories 
    patch 'change_password' 
    get 'account_setting' 
    end 

這對於account_setting行爲來生成路徑:

user_account_setting GET /users/:user_id/account_setting(.:format)  users#account_setting 

什麼我想要的是:

user_account_setting GET /users/:id/account_setting(.:format)  users#account_setting 

兩者本質上是一樣的東西,但第一個有user_用於id的前綴,因爲它在用戶資源塊中而被添加。

邊注

我知道我可以簡單地刪除用戶的資源塊的account_setting行動,並寫上:

get 'users/:id/account_setting', to: 'users#account_setting' 

但我不想。

回答

-1

在Rails 4您可以更改 簡單地使用

resources :users, param: :id do 
    resources :repositories 
    patch 'change_password' 
    get 'account_setting' 
    end 

ID則params的名字,這將產生

/用戶/:ID/account_setting

+0

我正在使用rails 4,但這不起作用。 –