问题是;
class ApplicationController < ActionController::Base
# Pick a unique cookie name to distinguish our session data from others'
session :session_key => '_simple_blog'
#session :disabled => true
private #------------
def authorize_access
if !session[:user_id]
flash[:notice] = "Please log in."
redirect_to(:controller => 'staff', :action => 'login')
return false
end
end
end
错误消息是
弃用警告:不推荐为单个控制器禁用会话。会话现在已加载延迟。因此,如果您不访问它们,请考虑它们。您仍然可以使用request.session_options修改会话cookie选项。
有人可以指出正确的方向。
由于
答案 0 :(得分:6)
您收到此警告是因为您通过session
方法显式加载会话上下文。你应该在一个动作中使用request.session_options[:session_key] = 'new_session_key'
,因为框架现在懒得加载上下文(如你所见)(如你所见)。如果要对所有操作执行此操作,请创建方法并使用before_filter
:
class ApplicationController < ActionController::Base
before_filter :setup_session_key
protected
def setup_session_key
# Pick a unique cookie name to distinguish our session data from others'
request.session_options[:session_key] = '_simple_blog'
end
end