Rails session 的 delete 方法

hunter · 2012年03月18日 · 最后由 hayeah 回复于 2012年03月18日 · 4421 次阅读

session 新手的问题-

很多地方提到了如何存储 session,却没有提到如何删除 sesstion data.

容易犯错的是仅仅把 session[:user_id]=nil

这样实际上仅仅删除了 value,没有把 key 删除,

应当使用 session.delete(:user_id),才会把 key 和 value 全部删除哦。

有什么区别嘛?留着 key 有什么坏处?

session[:user_id]=nil

这样已经能把 user_id 删除了。 你可以

Marshal.load(::Base64.decode64("session_content"))

把 session 内容 dump 出来看看,或者 pry 看一下。 lz 是想当然了。

controller 里 reset_session

需要 登录 后方可回复, 如果你还没有账号请 注册新账号