diff options
| author | Sean McGivern <sean@mcgivern.me.uk> | 2017-11-29 09:10:43 +0000 |
|---|---|---|
| committer | Sean McGivern <sean@mcgivern.me.uk> | 2017-11-29 09:10:43 +0000 |
| commit | a4f8dddc212fcd91f6a4a09e92b2de6117a21305 (patch) | |
| tree | eed31a76289f865cdb1d392c6bad3f2bf96ebbc4 /app/models/project.rb | |
| parent | 3659327d71a033703451baba01873d5663755739 (diff) | |
| parent | da42dfb3cf4a2fb0cdcc1a3b41438516a0bed0e5 (diff) | |
| download | gitlab-ce-a4f8dddc212fcd91f6a4a09e92b2de6117a21305.tar.gz | |
Merge branch 'dm-search-pattern' into 'master'
Use fuzzy search with minimum length of 3 characters where appropriate
Closes #40512
See merge request gitlab-org/gitlab-ce!15592
Diffstat (limited to 'app/models/project.rb')
| -rw-r--r-- | app/models/project.rb | 10 |
1 files changed, 2 insertions, 8 deletions
diff --git a/app/models/project.rb b/app/models/project.rb index 85d580fe0fa..5a3f591c2e7 100644 --- a/app/models/project.rb +++ b/app/models/project.rb @@ -426,17 +426,11 @@ class Project < ActiveRecord::Base # # query - The search query as a String. def search(query) - pattern = to_pattern(query) - - where( - arel_table[:path].matches(pattern) - .or(arel_table[:name].matches(pattern)) - .or(arel_table[:description].matches(pattern)) - ) + fuzzy_search(query, [:path, :name, :description]) end def search_by_title(query) - non_archived.where(arel_table[:name].matches(to_pattern(query))) + non_archived.fuzzy_search(query, [:name]) end def visibility_levels |
