ruby – rails – 处理布尔值假 – 它什么都不输出

我在我的db中记录了一个布尔字段(true / false)。

该字段已存档。 当归档为真时,所有这些都很好地输出true:

Rails.logger.info @commentable.archived Rails.logger.info @commentable.archived? Rails.logger.info !!@commentable.archived? 

但是当存档为假时,它不输出上述任何一个。 当字段为FALSE时,如何获得false输出?

谢谢

在场上试试.to_s

 irb(main):001:0> false.to_s => "false" irb(main):002:0> true.to_s => "true" irb(main):003:0> 

我更喜欢使用.inspect来输出到日志记录。 如果你得到一个零值,我发现它的输出更有用。

 ruby-1.8.7-p302 > nil.to_s => "" ruby-1.8.7-p302 > nil.inspect => "nil" ruby-1.8.7-p302 > false.to_s => "false" ruby-1.8.7-p302 > false.inspect => "false" ruby-1.8.7-p302 > 

false.to_s == 'false' ,但Rails.logger.info似乎在这里做错了:

 > puts true true > puts false false > Rails.logger.info true true > Rails.logger.info false