测试 关于 logger 的一个菜鸟问题

xiaoronglv · 2012年09月29日 · 最后由 quakewang 回复于 2012年09月29日 · 2021 次阅读

logger 中使用 block 有什么神奇之处?

“we can pass in a block to the debug call. This means that the code will only be called if the logging level is set to debug.”

def index
  @articles = Article.all
  logger.debug { "Articles Count: #{Article.count}" }
end

原文在这篇文章的底部,我彻底没看懂 http://railscasts.com/episodes/56-the-logger-revised?view=asciicast

如果你这样用,会先执行 Article.count,然后再判断 debug 的标记是否开启:

logger.debug "Articles Count: #{Article.count}"

用 block 的话,就不会浪费执行 Article.count 的时间了。

需要 登录 后方可回复, 如果你还没有账号请 注册新账号