加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – Rails会话数据 – 存储在哈希中

发布时间:2020-12-16 19:05:12 所属栏目:百科 来源:网络整理
导读:我在rails视图上有一个表单,它将数据提交到代表购物车摘要页面的页面. 当我将数据提交到下一页时,它们根据控制台输出按如下方式传输. "team"={"team_name"="Joe Blogs","email"="joe@bloggs.com","player1"="3","player2"="4","player3"="5"} 我想存储这个数
我在rails视图上有一个表单,它将数据提交到代表购物车摘要页面的页面.

当我将数据提交到下一页时,它们根据控制台输出按如下方式传输.

"team"=>{"team_name"=>"Joe Blogs","email"=>"joe@bloggs.com","player1"=>"
3","player2"=>"4","player3"=>"5"}

我想存储这个数据是一个会话变量,即作为哈希,所以如果另一个团队被提交到摘要页面,我可以将它作为另一个哈希条目添加到会话中.即团队[1],团队[2].
然后我可以访问团队[1] .team_name等,并相应地使用它.

总之,我希望用户能够填写表格并将其放入购物车.然后他们可以回去再做同样的事情.最后,可以查看他们的购物车并删除他们不想要的任何记录,清除购物车或将他们选择的内容提交到数据库中.

我无法找到如何做到或如果它甚至可能.

关于如何实现这个的任何解决方案或建议?

解决方法

您可以在Rails会话中轻松存储哈希.

例:

class SomeController < ApplicationController
  def some_action
    session[:cart] = {"team_name"=>"Joe Blogs","player1"=>"3","player3"=>"5"}
  end
end

但是,默认情况下,Rails将会话存储在cookie中,并且cookie大小仅限于4千字节的数据,因此如果您的哈希包含多个密钥,则需要使用其他内容进行会话存储,例如:数据库.

要在数据库中存储会话,您可以使用activerecord-session_store gem.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读