diff options
Diffstat (limited to 'app/models/members/member_role.rb')
-rw-r--r-- | app/models/members/member_role.rb | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/app/models/members/member_role.rb b/app/models/members/member_role.rb index 2e8532fa739..b4e3d6874ef 100644 --- a/app/models/members/member_role.rb +++ b/app/models/members/member_role.rb @@ -4,6 +4,15 @@ class MemberRole < ApplicationRecord # rubocop:disable Gitlab/NamespacedClass has_many :members belongs_to :namespace - validates :namespace_id, presence: true + validates :namespace, presence: true validates :base_access_level, presence: true + validate :belongs_to_top_level_namespace + + private + + def belongs_to_top_level_namespace + return if !namespace || namespace.root? + + errors.add(:namespace, s_("must be top-level namespace")) + end end |