从7.1.0.beta1版本开始,在原始sql语句中添加了一些注释。
irb(main):002> Rails::VERSION::STRING
=> "7.1.0.beta1"
irb(main):003> Product.limit(2)
Product Load (0.1ms) SELECT "products".* FROM "products" /* loading for pp */ LIMIT ? [["LIMIT", 2]]
这是什么意思?以及为什么添加了该评论?
这只是一个注释(/* 和 */ 是 sql 注释分隔符)。
SQL 查询之后,您应该看到结果。在您的示例中,您将看到前两条产品记录。
注释告诉你“这个sql查询字符串不是查询的结果,但它被添加到这里供你参考”。 “pp”的意思是“漂亮的印刷品”。
ActiveRecord 只是提供此辅助功能,以便您可以看到查询...否则您只能看到查询结果。请记住,Ruby 返回方法的最后一个值作为其返回值。对于您的查询,它是前两个 Product 实例。