diff options
Diffstat (limited to 'app/models/label.rb')
-rw-r--r-- | app/models/label.rb | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/app/models/label.rb b/app/models/label.rb index 7bbcaa121ca..96c1515b41a 100644 --- a/app/models/label.rb +++ b/app/models/label.rb @@ -1,7 +1,10 @@ +# frozen_string_literal: true + class Label < ActiveRecord::Base include CacheMarkdownField include Referable include Subscribable + include Gitlab::SQL::Pattern # Represents a "No Label" state used for filtering Issues and Merge # Requests that have no label assigned. @@ -103,6 +106,17 @@ class Label < ActiveRecord::Base nil end + # Searches for labels with a matching title or description. + # + # This method uses ILIKE on PostgreSQL and LIKE on MySQL. + # + # query - The search query as a String. + # + # Returns an ActiveRecord::Relation. + def self.search(query) + fuzzy_search(query, [:title, :description]) + end + def open_issues_count(user = nil) issues_count(user, state: 'opened') end |