我正在使用POW进行本地rails开发。我不知道为什么,但我不能打印或放置信息到我的development.log。我想将变量的内容从控制器放入控制台/日志。有什么建议吗?
我用tail -f logs/development.log
谢谢!
答案 0 :(得分:41)
而不是puts
,请尝试logger.info()
。 Logging in Rails非常灵活,但它确实意味着您有时可能无法使用最简单的工具。
答案 1 :(得分:9)
如果您正在进行调试并且只想在日志中看到一些消息,则可以执行以下操作:
Rails.logger.debug("debug::" + person.name)
和
$ pow logs | grep debug::
现在您只会看到以debug ::
开头的日志消息答案 2 :(得分:1)
另一个选择是使用rails标记记录器http://api.rubyonrails.org/classes/ActiveSupport/TaggedLogging.html。
logger = ActiveSupport::TaggedLogging.new(Logger.new(STDOUT))
logger.tagged('BCX') { logger.info 'Stuff' } # Logs "[BCX] Stuff"
$ pow logs | grep BCX
答案 3 :(得分:0)
对于仍然无法使用它的人,请记住Ruby不使用分号。它们仅用于chain commands。由于肌肉记忆(来自PHP),我最后在最后添加它们,所以ruby控制台认为我还在输入命令:
irb(main):001:0> puts "hi";
irb(main):002:0* puts "hi"
hi
hi
=> nil
希望这有助于某人。