From 0d8f00a28ad7d1a7881ece0946e0c94fb8887349 Mon Sep 17 00:00:00 2001 From: Sean McGivern Date: Fri, 9 Dec 2016 17:59:29 +0000 Subject: Merge branch 'followup-7899' into 'master' Use a single query in Projects::ProjectMembersController to fetch members See merge request !7997 --- app/controllers/projects/project_members_controller.rb | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/app/controllers/projects/project_members_controller.rb b/app/controllers/projects/project_members_controller.rb index 3fb8bba3cd0..53308948f62 100644 --- a/app/controllers/projects/project_members_controller.rb +++ b/app/controllers/projects/project_members_controller.rb @@ -35,13 +35,12 @@ class Projects::ProjectMembersController < Projects::ApplicationController @group_links = @project.project_group_links.where(group_id: @project.invited_groups.search(params[:search]).select(:id)) end - member_ids = @project_members.pluck(:id) + wheres = ["id IN (#{@project_members.select(:id).to_sql})"] + wheres << "id IN (#{group_members.select(:id).to_sql})" if group_members - if group_members - member_ids += group_members.pluck(:id) - end - - @project_members = Member.where(id: member_ids).order(access_level: :desc).page(params[:page]) + @project_members = Member. + where(wheres.join(' OR ')). + order(access_level: :desc).page(params[:page]) @requesters = AccessRequestsFinder.new(@project).execute(current_user) -- cgit v1.2.1