diff options
Diffstat (limited to 'app/models/application_record.rb')
-rw-r--r-- | app/models/application_record.rb | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/app/models/application_record.rb b/app/models/application_record.rb index 1bbace791ed..5e5bc00458e 100644 --- a/app/models/application_record.rb +++ b/app/models/application_record.rb @@ -66,6 +66,12 @@ class ApplicationRecord < ActiveRecord::Base end end + def create_or_load_association(association_name) + association(association_name).create unless association(association_name).loaded? + rescue ActiveRecord::RecordNotUnique, PG::UniqueViolation + association(association_name).reader + end + def self.underscore Gitlab::SafeRequestStore.fetch("model:#{self}:underscore") { self.to_s.underscore } end @@ -80,4 +86,4 @@ class ApplicationRecord < ActiveRecord::Base end end -ApplicationRecord.prepend_if_ee('EE::ApplicationRecordHelpers') +ApplicationRecord.prepend_mod_with('ApplicationRecordHelpers') |