gpt4 book ai didi

ruby - Rails Controller 中的运算符 (||=) 出现问题

转载 作者:数据小太阳 更新时间:2023-10-29 08:21:19 39 4
gpt4 key购买 nike

def index
@hash ||= Hash.new
puts @hash #the result is {} every time I reload the action
@hash['key'] = value
end

我认为通过这样做,变量@hash 将只被签名一次。

但事实证明,如果我是对的,每次重新加载索引操作时,@hash 都会是一个新的空哈希。

我是对的还是有其他原因导致这种奇怪的现象?

最佳答案

Controller 实例不会为不同的请求共享(那将是一团糟!),每个请求都会创建一个新实例。

只需使用类似散列的对象session,这是进行有状态请求的正确方法(数据通常 - 但不总是,还有其他方式 - 存储在 cookie 中)

session[:my_key] = my_value

关于ruby - Rails Controller 中的运算符 (||=) 出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7190934/

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