diff options
Diffstat (limited to 'lib/api/search.rb')
-rw-r--r-- | lib/api/search.rb | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/lib/api/search.rb b/lib/api/search.rb index 3d2d4527e30..a9f19a5d781 100644 --- a/lib/api/search.rb +++ b/lib/api/search.rb @@ -20,6 +20,10 @@ module API users: Entities::UserBasic }.freeze + SCOPE_PRELOAD_METHOD = { + merge_requests: :with_api_entity_associations + }.freeze + def search(additional_params = {}) search_params = { scope: params[:scope], @@ -29,7 +33,7 @@ module API per_page: params[:per_page] }.merge(additional_params) - results = SearchService.new(current_user, search_params).search_objects + results = SearchService.new(current_user, search_params).search_objects(preload_method) paginate(results) end @@ -42,6 +46,10 @@ module API SCOPE_ENTITY[params[:scope].to_sym] end + def preload_method + SCOPE_PRELOAD_METHOD[params[:scope].to_sym] + end + def verify_search_scope!(resource:) # In EE we have additional validation requirements for searches. # Defining this method here as a noop allows us to easily extend it in |