Check polymorphic type in validations

* Previously, some models had "duplicated" `belongs_to` associations, which were now removed (and replaced by the `include Creation`).
This commit is contained in:
Sebastian Serth
2023-08-20 18:01:18 +02:00
committed by Sebastian Serth
parent be4f2b790d
commit 977fa4539e
16 changed files with 26 additions and 13 deletions

View File

@@ -4,11 +4,15 @@ 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