diff --git a/app/models/concerns/issuable.rb b/app/models/concerns/issuable.rb index 9a9b562af028ab449617e684565b04fba90e3ef5..17c3b526c97fc80e36da3a971eabbf1b0dd862c9 100644 --- a/app/models/concerns/issuable.rb +++ b/app/models/concerns/issuable.rb @@ -145,16 +145,10 @@ module Issuable end def order_labels_priority(excluded_labels: []) - project_column = - case table_name - when Issue.table_name then "#{table_name}.project_id" - when MergeRequest.table_name then "#{table_name}.target_project_id" - end - params = { target_type: name, target_column: "#{table_name}.id", - project_column: project_column, + project_column: "#{table_name}.#{project_foreign_key}", excluded_labels: excluded_labels } diff --git a/app/models/issue.rb b/app/models/issue.rb index f7ccce2924a7d5d544c0f2404bba889e5e0e28db..133a5993815134fcc92d9d8c6160f8d38c1cdfe7 100644 --- a/app/models/issue.rb +++ b/app/models/issue.rb @@ -138,6 +138,10 @@ class Issue < ActiveRecord::Base reference.to_i > 0 && reference.to_i <= Gitlab::Database::MAX_INT_VALUE end + def self.project_foreign_key + 'project_id' + end + def self.sort(method, excluded_labels: []) case method.to_s when 'due_date_asc' then order_due_date_asc diff --git a/app/models/merge_request.rb b/app/models/merge_request.rb index fedc35102ef572616f025ad4b5359b8ffd51f00f..0cc0b3c2a0e6467f487cbff1e52034970cdd7ac7 100644 --- a/app/models/merge_request.rb +++ b/app/models/merge_request.rb @@ -137,6 +137,10 @@ class MergeRequest < ActiveRecord::Base reference.to_i > 0 && reference.to_i <= Gitlab::Database::MAX_INT_VALUE end + def self.project_foreign_key + 'target_project_id' + end + # Returns all the merge requests from an ActiveRecord:Relation. # # This method uses a UNION as it usually operates on the result of