gpt4 book ai didi

ruby-on-rails - 在 Rails 3 中将 session 变量初始化为数组

转载 作者:行者123 更新时间:2023-12-03 01:37:27 27 4
gpt4 key购买 nike

我需要将 session 变量初始化为数组。我在哪里做这个?

当我尝试这样做时:

session[:complains_id] << params[:id]

我收到此消息

You have a nil object when you didn't expect it! You might have expected an instance of Array. The error occurred while evaluating nil.<<

我知道我必须初始化 var,但我不知道在哪里。

谢谢!

最佳答案

就这样做:

  (session[:complains_id] ||= []) << params[:id]

这句话的意思是:

  1. 如果 session[:complains_id] 返回nil,将其设置为[]。

  2. 追加params[:id] session [:complains_id]

演示:

ruby-1.9.2-p136 :007 > (session[:complains_id] ||= []) << 5
=> [5]
ruby-1.9.2-p136 :008 > (session[:complains_id] ||= []) << 3
=> [5, 3]
ruby-1.9.2-p136 :009 > (session[:complains_id] ||= []) << 1
=> [5, 3, 1]

关于ruby-on-rails - 在 Rails 3 中将 session 变量初始化为数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5629540/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com