]> git.openstreetmap.org Git - rails.git/blobdiff - app/models/user_role.rb
Merge remote-tracking branch 'upstream/pull/3403'
[rails.git] / app / models / user_role.rb
index c4d703530220bac59cc59f9f96b5db47e7213227..a081361a76cb6db41fe03737c313db6fc08ddc45 100644 (file)
@@ -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].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