在rails中清除会话变量的最佳方法是什么?

Moh*_*ain 112 session ruby-on-rails

session[:message] = nil
Run Code Online (Sandbox Code Playgroud)

这是销毁会话变量的最佳方法吗?

注意:我不想清除所有会话变量reset_session.

Sig*_*urd 228

session.delete(:message)
Run Code Online (Sandbox Code Playgroud)

通常,会话变量是SessionHashobject,它是从hash继承的.

  • 这是正确的方法.session [:message] = nil会在会话哈希中留下:message键,这会破坏密钥和值,就像你的会话永远没有分配给该密钥的任何值一样. (15认同)