debian-mirror-gitlab/app/models/achievements/achievement.rb

22 lines
598 B
Ruby
Raw Normal View History

2023-03-04 22:38:38 +05:30
# frozen_string_literal: true
module Achievements
class Achievement < ApplicationRecord
include Avatarable
include StripAttribute
belongs_to :namespace, inverse_of: :achievements, optional: false
2023-03-17 16:20:25 +05:30
has_many :user_achievements, inverse_of: :achievement
has_many :users, through: :user_achievements, inverse_of: :achievements
2023-03-04 22:38:38 +05:30
strip_attributes! :name, :description
validates :name,
2023-07-09 08:55:56 +05:30
presence: true,
length: { maximum: 255 },
uniqueness: { case_sensitive: false, scope: [:namespace_id] }
2023-03-04 22:38:38 +05:30
validates :description, length: { maximum: 1024 }
end
end