我想知道Rails在以下情况下是否可以缓存任何内容:
Rails.cache.fetch("some_key", expires_in: 1.day) do
service.call # raises exception
[]
end
我很关心,因为如果Rails.cache.fetch
块中的请求失败,我想在下一个请求中重试。不要让用户等待24小时重试。
no。如果提高异常,则不会缓存任何东西。
Rails Guides说,该块的返回值将写入缓存。
当一个块提出异常时,不返回任何东西,因此没有任何缓存。