有一段代码一直让我很困惑:
我绞尽脑汁也想不明白,为什么要把时间段内发布的帖子数量乘以所需阅读帖子的百分比,然后取最小值。如果这里的意图是计算已读帖子的比例,那么难道不应该是“已读帖子数 / 帖子总数”,再乘以 100 吗?
假设在过去 x 天内共有 9 个帖子,而设置仅要求阅读 2 个,那么既然 2 小于帖子上限,该方法不应该直接返回 2 吗?
供参考,以下是所有相关数值:
[2] pry(main)> TrustLevel3Requirements.num_posts_in_time_period.to_i
=> 9
[3] pry(main)> SiteSetting.tl3_requires_posts_read.to_f
=> 2.0
[4] pry(main)> (
[4] pry(main)> TrustLevel3Requirements.num_posts_in_time_period.to_i *
[4] pry(main)> (SiteSetting.tl3_requires_posts_read.to_f / 100.0)
[4] pry(main)> ).round
=> 0
[5] pry(main)> 9*0.02
=> 0.18
[6] pry(main)> SiteSetting.tl3_requires_posts_read_cap
=> 2000
我是否误解了该方法的意图?谢谢。