假设我们有用户,帖子和评论。用户有很多帖子,帖子有很多评论并属于用户。评论仅属于帖子。
假设我有评论,并且我想让用户与帖子相关联。
我能做到:comment.post.user
。
这样做会触发2个SQL查询(除非帖子已经缓存):
Post Load (0.8ms) SELECT "posts".* FROM "posts" WHERE "posts"."id" = $1 LIMIT 1 [["id", 1]]
User Load (0.4ms) SELECT "users".* FROM "users" WHERE "users"."id" = $1 LIMIT 1 [["id", 1]]
现在,我不会问是否可以为此进行一次SQL查询。我知道它是。有没有办法让ActiveRecord只进行一次查询?
如果以上是在交易中完成的话,我认为这可能不是什么大问题,但我对此表示怀疑。
答案 0 :(得分:0)