Files
codeocean/app/models/concerns/contributor_creation.rb
Sebastian Serth 977fa4539e Check polymorphic type in validations
* Previously, some models had "duplicated" `belongs_to` associations, which were now removed (and replaced by the `include Creation`).
2023-08-24 19:32:06 +02:00

19 lines
499 B
Ruby

# frozen_string_literal: true
module ContributorCreation
extend ActiveSupport::Concern
include Contributor
ALLOWED_CONTRIBUTOR_TYPES = [InternalUser, ExternalUser, ProgrammingGroup].map(&:to_s).freeze
included do
belongs_to :contributor, polymorphic: true
alias_method :user, :contributor
alias_method :user=, :contributor=
alias_method :author, :user
alias_method :creator, :user
validates :contributor_type, inclusion: {in: ALLOWED_CONTRIBUTOR_TYPES}
end
end