ModelSerializer中的N + 1个查询

时间:2017-10-29 10:01:21

标签: ruby-on-rails ruby-on-rails-5

Comment.includes(:replies).without_replies

这样我得到了所有评论。我写API。我使用ActiveModelSerializer`

评论与用户有关系。 belongs_to :user

class CommentSerializer < ActiveModel::Serializer
  has_many :replies, class_name: 'Comment'

  attributes :id,
             :user_image_url

  def user_image_url
    object.user.image_url
  end
end

我需要了解发表评论的用户的照片。 方法user_image_url。 都很好。 但是bullet会显示一条消息。

GET /api/v1/comments?page=1&per_page=20
USE eager loading detected
  Comment => [:user]
  Add to your finder: :includes => [:user]
Call stack
  /app/serializers/comment_serializer.rb:27:in `user_image_url'

我这样做了。 Comment.includes(:replies, :user).without_replies但没有,为什么?

1 个答案:

答案 0 :(得分:0)

您是否尝试过Comment.includes(:replies, :user).without_replies

相关问题