Skip to content

Commit e6df914

Browse files
committed
feat: set search param to index params also try to use
ExecutionContext
1 parent da7469c commit e6df914

File tree

1 file changed

+13
-3
lines changed

1 file changed

+13
-3
lines changed

Diff for: app/controllers/avo/base_controller.rb

+13-3
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,8 @@ def index
2626
add_breadcrumb @resource.plural_name.humanize
2727

2828
# Apply the search query if configured on the resource
29-
apply_search_query if params[:q].present? && @resource.search.present?
3029
set_index_params
30+
apply_search
3131
set_filters
3232
set_actions
3333
set_query
@@ -322,6 +322,9 @@ def set_index_params
322322

323323
set_pagination_params
324324

325+
# Search
326+
@index_params[:q] = params[:q] if params[:q].present?
327+
325328
# Sorting
326329
@index_params[:sort_by] = params[:sort_by] || @resource.sort_by_param
327330

@@ -661,11 +664,18 @@ def set_query
661664
@query ||= @resource.class.query_scope
662665
end
663666

664-
def apply_search_query
667+
def apply_search
668+
return if @resource.class.search_query.nil?
669+
return if @index_params[:q].nil?
670+
665671
search_query = @resource.search[:query]
666672
return unless search_query.present?
667673

668-
@query = instance_exec(@query, &search_query)
674+
@query = Avo::ExecutionContext.new(
675+
target: @resource.class.search_query,
676+
params: params,
677+
query: @query
678+
).handle
669679
end
670680
end
671681
end

0 commit comments

Comments
 (0)