summaryrefslogtreecommitdiff
path: root/lib/api/search.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/api/search.rb')
-rw-r--r--lib/api/search.rb10
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