我很好奇为什么session
在rake db:drop
之后还活着?
我有
def current_order
if !session[:order_id].nil?
@current_order = Order.find(session[:order_id])
else
Order.new
end
end
helper_method :current_order
并且在rake db:drop之后它给了我异常
Couldn't find Order with 'id' = my session number
>> session[:order_id]
=> 11
这意味着会话仍在那里。但是为什么?
答案 0 :(得分:1)
Rails默认使用ActionDispatch::Session::CookieStore
来存储会话。因此,清除数据库不会删除客户端持有的任何会话数据。
相反,您将删除浏览器中的cookie(正在开发中)或更改密钥库以使现有cookie无效。
请参阅: