ruby-on-rails – rails 3,heroku,如何使用会话

前端之家收集整理的这篇文章主要介绍了ruby-on-rails – rails 3,heroku,如何使用会话前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我看到了如何为rails 3设置会话的一个很好的答案
( Rails sessions current practices)

我们从用户那里收集了一系列问题,我想在会议中保留他们的答案列表,直到我们结束然后全部写完……

但我不确定如何从会话中写入和读取信息……任何快速指针都会被理解为如何保存,例如,哈希的内容

此外,我们的应用程序托管在Heroku的网格上是否会改变我们如何/应该处理会话?

干杯,
J.P

解决方法

你不必为Heroku改变任何东西.默认情况下,Rails会话存储在加密的cookie中,因此不需要服务器端配置.

但是,cookie只能存储4,096字节的数据.如果您在会话中存储大量数据(通常不建议这样做),您可能会溢出cookie.在这种情况下,您可能希望设置基于ActiveRecord或Memcached的cookie.这两个都很容易做到,并不是真正的Heroku特定问题.如果您需要帮助,可以随时询问另一个StackOverflow问题.就目前而言,直到达到极限才会令人担忧.

在会话中存储和阅读答案的一些粗略代码,假设问题和答案是ActiveRecord模型:

def store_answer(question,answer)
  session[:answers] ||= {}
  session[:answers][question.id] = answer.id
end

def read_answer(question)
  Answer.find(session[:answers][question.id])
end
原文链接:https://www.f2er.com/ruby/271240.html

猜你在找的Ruby相关文章