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