PERF: N+1 query on groups page.

This commit is contained in:
Guo Xiang Tan
2016-12-21 20:58:51 +08:00
parent 076a08d8e1
commit 5e75d5c1bf
4 changed files with 21 additions and 7 deletions

View File

@@ -23,11 +23,16 @@ class GroupsController < ApplicationController
count = groups.count
groups = groups.offset(page * page_size).limit(page_size)
render json: {
groups: serialize_data(groups, GroupShowSerializer),
group_user_ids = GroupUser.where(group: groups, user: current_user).pluck(:group_id)
render_json_dump(
groups: serialize_data(groups, BasicGroupSerializer),
extras: {
group_user_ids: group_user_ids
},
total_rows_groups: count,
load_more_groups: groups_path(page: page + 1)
}
)
end
def show