Sha256: 34bb9a35f7e35c00a9a9495a11283155916526d4021735ab651705f06e649f1e
Contents?: true
Size: 596 Bytes
Versions: 76
Compression:
Stored size: 596 Bytes
Contents
# frozen_string_literal: true module Decidim # A UserGroupMembership associate user with user groups class UserGroupMembership < ApplicationRecord belongs_to :user, class_name: "Decidim::User", foreign_key: :decidim_user_id belongs_to :user_group, class_name: "Decidim::UserGroup", foreign_key: :decidim_user_group_id ROLES = %w(creator admin member requested invited).freeze validates :role, inclusion: { in: ROLES } validates :role, uniqueness: { scope: [:role, :decidim_user_group_id] }, if: :creator? def creator? role.to_s == "creator" end end end
Version data entries
76 entries across 76 versions & 1 rubygems