From 1c11630c688f936413feb7ec644eb3053e238f12 Mon Sep 17 00:00:00 2001 From: "Jesse C. Fisher" Date: Thu, 1 Jan 2015 16:07:10 -0800 Subject: [PATCH] rails_apps_composer: add roles to a User model --- app/models/user.rb | 7 +++++++ db/migrate/20150102000710_add_role_to_users.rb | 5 +++++ 2 files changed, 12 insertions(+) create mode 100644 db/migrate/20150102000710_add_role_to_users.rb diff --git a/app/models/user.rb b/app/models/user.rb index d9958270..9977b48e 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -1,4 +1,11 @@ class User < ActiveRecord::Base + enum role: [:user, :vip, :admin] + after_initialize :set_default_role, :if => :new_record? + + def set_default_role + self.role ||= :user + end + # Include default devise modules. Others available are: # :confirmable, :lockable, :timeoutable and :omniauthable devise :database_authenticatable, :registerable, :confirmable, diff --git a/db/migrate/20150102000710_add_role_to_users.rb b/db/migrate/20150102000710_add_role_to_users.rb new file mode 100644 index 00000000..6d2997dd --- /dev/null +++ b/db/migrate/20150102000710_add_role_to_users.rb @@ -0,0 +1,5 @@ +class AddRoleToUsers < ActiveRecord::Migration + def change + add_column :users, :role, :integer + end +end