具体来说,如果缓存中不存在密钥,我想将密钥值对添加到缓存中。可以使用Rails.cache.fetch吗?
以原子方式完成谢谢!
答案 0 :(得分:2)
您必须使用:unless_exist
选项进行编写:
Rails.cache.write(k, v, :unless_exist => true)
只有当密钥不存在时,该方法才会返回true。否则,该方法返回false:
if Rails.cache.write(k, v, :unless_exist => true)
# do something only when the key wasn't there
end