X-Git-Url: https://git.openstreetmap.org./rails.git/blobdiff_plain/ef7f3d800cbdd49b692df10d312e5fd880e2e938..c2977d605116a87234079d522231104a5fb84dd1:/app/models/user_role.rb diff --git a/app/models/user_role.rb b/app/models/user_role.rb index c4d703530..332848e42 100644 --- a/app/models/user_role.rb +++ b/app/models/user_role.rb @@ -1,8 +1,29 @@ -class UserRole < ActiveRecord::Base +# == Schema Information +# +# Table name: user_roles +# +# id :integer not null, primary key +# user_id :bigint(8) not null +# role :enum not null +# created_at :datetime +# updated_at :datetime +# granter_id :bigint(8) not null +# +# Indexes +# +# user_roles_id_role_unique (user_id,role) UNIQUE +# +# Foreign Keys +# +# user_roles_granter_id_fkey (granter_id => users.id) +# user_roles_user_id_fkey (user_id => users.id) +# + +class UserRole < ApplicationRecord belongs_to :user + belongs_to :granter, :class_name => "User" - ALL_ROLES = %w(administrator moderator) + ALL_ROLES = %w[administrator moderator importer].freeze - validates_inclusion_of :role, :in => ALL_ROLES - validates_uniqueness_of :role, :scope => :user_id + validates :role, :inclusion => ALL_ROLES, :uniqueness => { :scope => :user_id } end