我是rails的新手,所以我只是向你解释一下我的情况:
我有一个用户模型和一个UsersController。用户使用他们的电子邮件地址和密码登录。特殊用户可以通过在表单中键入被邀请者的电子邮件地址并点击提交来邀请其他用户。然后,受邀用户通过首次输入密码来接收包含激活其帐户的链接的邮件。
问题在于:
“邀请”表单映射到我的UsersController atm的create动作。但是我如何将“激活”表单映射到?
我是否可以定义自定义操作“激活”或可以像/users/3/activate
那样访问的内容(当然,这里也应该有一些身份验证令牌......)并且会激活用户id 3?
我在自定义操作中找到了一些东西,但我还没有完全了解它。
获取任何帮助
答案 0 :(得分:8)
你的路线文件中可能有这样的东西。 (如果没有,请发布。)
resources :users
如果您想添加一个针对单个User
的自定义操作,您可以将其添加为:member
这样的内容。
resources :users do
member do
get :activate
end
end
请注意,使用get
修改数据的内容有点不对,但您正在谈论通过电子邮件中的链接点击此内容。
当你玩路线时,不要忘记rake routes
会显示你目前可以使用的所有路线。