如何在'routes.rb'中映射新的CRUD操作?

时间:2010-12-18 16:18:50

标签: ruby-on-rails ruby url view routes

在我的'routes.rb'文件中,我有这段代码:

resources :users

将我的用户控制器映射为this

如果我想为用户映射“重置”视图/网址(路径:/ users / reset),我必须在'routes.rb'文件中插入哪些代码?

2 个答案:

答案 0 :(得分:1)

这样做:

resources :user do
  member do
    get 'reset'
  end
end

请参阅您引用的Rails指南中的this section

答案 1 :(得分:1)

两个选项 - 我假设你只是要对会话用户采取行动,所以你不需要传入一个id进行操作?如果是这样,您需要进行一些额外的更改......

使用明确的路线:

match "/users/reset" => 'users#reset', :as => 'reset_user' 

'as'部分是可选的。

添加一个对'集合'进行操作的新路线。这会让你成为你的路线,但感觉就像是黑客,我不推荐它。

resources :users do
  collection do
    get 'reset'
  end
end