当我的用户登录时,我希望他们默认使用自己的“显示”页面,因为我不希望查看用户列表。所以为了做到这一点,我改变了默认的after_sign_in,像这样;
def after_sign_in_path_for(resource)
user_path(current_user)
end
效果很好。修改密码后就出错了。我需要修改根路径,以便在更改后进入显示页面
root :to => "users#show"
..但是现在,显然,我没有:id,所以我得到了
ActiveRecord::RecordNotFound in UsersController#show
Couldn't find User without an ID
...这是有道理的。我正在使用设计附带的控制器,所以我的问题是,我如何挂钩密码更改并将用户发送到他们的显示页面?我是否可以只编辑 def 节目说
def show
@user = User.find(params[:id]) || current_user
还是我需要修改我的
root :to => "users#show"
反映 current_user 的 id,假设设计自动将用户重新登录......或者它从未将它们注销......?
谢谢