Add search syntax for operators and phrases (#11411)
This commit is contained in:
parent
501148ab91
commit
b9fbcbfe4e
6 changed files with 112 additions and 6 deletions
|
@ -33,8 +33,7 @@ class SearchService < BaseService
|
|||
end
|
||||
|
||||
def perform_statuses_search!
|
||||
definition = StatusesIndex.filter(term: { searchable_by: @account.id })
|
||||
.query(multi_match: { type: 'most_fields', query: @query, operator: 'and', fields: %w(text text.stemmed) })
|
||||
definition = parsed_query.apply(StatusesIndex.filter(term: { searchable_by: @account.id }))
|
||||
|
||||
if @options[:account_id].present?
|
||||
definition = definition.filter(term: { account_id: @options[:account_id] })
|
||||
|
@ -70,7 +69,7 @@ class SearchService < BaseService
|
|||
end
|
||||
|
||||
def url_query?
|
||||
@options[:type].blank? && @query =~ /\Ahttps?:\/\//
|
||||
@resolve && @options[:type].blank? && @query =~ /\Ahttps?:\/\//
|
||||
end
|
||||
|
||||
def url_resource_results
|
||||
|
@ -120,4 +119,8 @@ class SearchService < BaseService
|
|||
domain_blocking_by_domain: Account.domain_blocking_map_by_domain(domains, account.id),
|
||||
}
|
||||
end
|
||||
|
||||
def parsed_query
|
||||
SearchQueryTransformer.new.apply(SearchQueryParser.new.parse(@query))
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue