我想调试/打印代码块内的值
Rails.cache.fetch(some values) do
#want to get the values from this blocks.
end
尝试使用 Rails.logger.ap、puts、调试器。什么都没解决。我假设这只是由于缓存提取吗?
请建议我一些解决方案。提前致谢。
我想调试/打印代码块内的值
Rails.cache.fetch(some values) do
#want to get the values from this blocks.
end
尝试使用 Rails.logger.ap、puts、调试器。什么都没解决。我假设这只是由于缓存提取吗?
请建议我一些解决方案。提前致谢。
只是为了解释一下apneadiving 的评论。
由于您使用缓存,Rails 只会运行该块一次,直到您删除内容。看看下面的代码会发生什么
>> Rails.cache.fetch(:foo) { 'bar' } # writes 'foo' to cache with value 'bar' since this is the first time you run the command
>> Rails.cache.fetch(:foo) { 'bar' } # fetches 'foo' from cache since it's already in the cache so the block is not executed
如果要调试块内部的内容,可以先删除对缓存的调用(始终评估块)或Rails.cache.delete(:foo)
在块之前添加。