0
我试图保护某些操作不被未经授权的用户访问。我应该从在过滤器中调用的助手方法返回什么?
这里从我的控制器的一个小例子:
class RestaurantsController < ApplicationController
before_filter :require_admin, :only => [:new, :create, :update, :edit, :destroy]
#...yada yada yada...
end
而且在我的ApplicationController(因为我需要保护在许多控制器那些相同的动作)我把辅助方法,所以我不重复自己。
class ApplicationController < ActionController::Base
protect_from_forgery
private
def current_user
@current_user ||= User.find(session[:user_id]) if session[:user_id]
end
def require_admin
???
end
helper_method :current_user
end
我应该从我require_admin方法,以便返回:
- 防止流如果
current_user
不是管理员。 - 如果
current_user
是管理员,允许定期流动。
此外,我是否需要将require_admin
作为helper_method
?
我知道如何处理is admin?
位,我只需要知道从我的过滤器调用的帮助器方法返回什么。
有什么建议吗?