Reduce number of roles queries for the admin controller (#631)

This commit is contained in:
shawn-higgins1
2019-07-15 14:45:06 -04:00
committed by farhatahmad
parent 5a3ad3159c
commit 8c63f793a5
10 changed files with 24 additions and 20 deletions

View File

@ -162,7 +162,7 @@ class AdminsController < ApplicationController
private
def find_user
@user = User.find_by!(uid: params[:user_uid])
@user = User.where(uid: params[:user_uid]).includes(:roles).first
end
def find_setting
@ -176,10 +176,10 @@ class AdminsController < ApplicationController
# Gets the list of users based on your configuration
def user_list
initial_list = if current_user.has_role? :super_admin
User.where.not(id: current_user.id)
initial_list = if current_user.has_cached_role? :super_admin
User.where.not(id: current_user.id).includes(:roles)
else
User.without_role(:super_admin).where.not(id: current_user.id)
User.without_role(:super_admin).where.not(id: current_user.id).includes(:roles)
end
list = @role.present? ? initial_list.with_role(@role.to_sym) : initial_list