gpt4 book ai didi

ruby-on-rails - 当值为 nil 时 Rails 继续缓存

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

当值为 nil 时,Rails 3.2.13 缓存键。一直在查看文档以查找是否有任何选项可以设置为停止此行为,但找不到任何选项。

当值为 nil 时,有没有办法阻止 Rails 缓存一个键?

1.8 :001 > value = nil
=> nil
1.8 :002 > Rails.cache.fetch('foo'){value}
=> nil
1.8 :003 > value = true
=> true
1.8 :004 > Rails.cache.fetch('foo'){value}
=> nil

最佳答案

Rails 缓存中没有内置选项可以做到这一点,所以我会使用自定义方法来完成您想要的,如下所示:

def fetch(key, value)
if Rails.cache.exist?(key)
Rails.cache.read(key)
else
Rails.cache.write(key, value) unless value.nil?
end
end

fetch('foo', nil)
# => nil
fetch('foo', true)
# => true

关于ruby-on-rails - 当值为 nil 时 Rails 继续缓存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22662028/

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