diff options
Diffstat (limited to 'app/models/incident_management/timeline_event_tag.rb')
-rw-r--r-- | app/models/incident_management/timeline_event_tag.rb | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/app/models/incident_management/timeline_event_tag.rb b/app/models/incident_management/timeline_event_tag.rb new file mode 100644 index 00000000000..cde3afcaa16 --- /dev/null +++ b/app/models/incident_management/timeline_event_tag.rb @@ -0,0 +1,20 @@ +# frozen_string_literal: true + +module IncidentManagement + class TimelineEventTag < ApplicationRecord + self.table_name = 'incident_management_timeline_event_tags' + + belongs_to :project, inverse_of: :incident_management_timeline_event_tags + + has_many :timeline_event_tag_links, + class_name: 'IncidentManagement::TimelineEventTagLink' + + has_many :timeline_events, + class_name: 'IncidentManagement::TimelineEvent', + through: :timeline_event_tag_links + + validates :name, presence: true, format: { with: /\A[^,]+\z/ } + validates :name, uniqueness: { scope: :project_id } + validates :name, length: { maximum: 255 } + end +end |