cô là application.rb tôiRoR | Vạch vòng lặp chuyển hướng vì Cancan phép
class ApplicationController < ActionController::Base
protect_from_forgery
rescue_from CanCan::AccessDenied do |exception|
flash[:error] = "You must first login to view this page"
session[:user_return_to] = request.url
redirect_to "https://stackoverflow.com/users/sign_in"
end
end
này sẽ chuyển hướng sử dụng đến trang đăng nhập nếu AccessDenied là ném và người dùng không đăng nhập ("hoạt động độc đáo"), nhưng một khi đăng nhập nó sẽ gây ra một vòng lặp chuyển hướng nếu đăng nhập nhưng không được ủy quyền bởi cancan kể từ khi trang đăng nhập sẽ chỉ chuyển hướng chúng trở lại cho người dùng quyền trở lại thông qua phiên [: user_return_to] = request.url.
Câu hỏi đặt ra là: làm cách nào để xử lý logic này nếu người dùng đăng nhập nhưng không được ủy quyền.
nếu bạn sử dụng để xác thực bạn có thể kiểm tra 'current_user' nếu người dùng đăng nhập hay không – krichard