Ruby on rails Rails:当前用户应该只能查看自己的用户演示页面(Desive)?
是否有一种方法允许用户只查看自己的个人资料页面usersshow?因此,当id为say 1的人试图访问www.myapp.com/users/412 url时,他将被重新定向到根页面?他只能访问www.myapp.com/users/1 我正在使用Desive,这就是我尝试过的。然而,奇怪的是,使用这段代码,当前用户无法访问自己的页面 用户\u controller.rbRuby on rails Rails:当前用户应该只能查看自己的用户演示页面(Desive)?,ruby-on-rails,Ruby On Rails,是否有一种方法允许用户只查看自己的个人资料页面usersshow?因此,当id为say 1的人试图访问www.myapp.com/users/412 url时,他将被重新定向到根页面?他只能访问www.myapp.com/users/1 我正在使用Desive,这就是我尝试过的。然而,奇怪的是,使用这段代码,当前用户无法访问自己的页面 用户\u controller.rb 啊,真是太容易了。。。这就是我的工作原理: def only_see_own_page @user = User.fin
啊,真是太容易了。。。这就是我的工作原理:
def only_see_own_page
@user = User.find(params[:id])
if current_user != @user
redirect_to root_path, notice: "Sorry, but you are only allowed to view your own profile page."
end
end
你应该考虑使用一个库来管理授权。有一个伟大的介绍在。
resources :users, only: [:show]
def only_see_own_page
@user = User.find(params[:id])
if current_user != @user
redirect_to root_path, notice: "Sorry, but you are only allowed to view your own profile page."
end
end