First create the Role model and link it to the User Model
$ rails g model Role name:string $ rails g migration addRoleIdToUser role:references $ rake db:migrate
Then in your Models
class User < ActiveRecord::Base belongs_to :role end class Role < ActiveRecord::Base has_many :users end
['registered', 'banned', 'moderator', 'admin'].each do |role| Role.find_or_create_by({name: role}) end
Then
$ rake db:seed
class User < ActiveRecord::Base belongs_to :role before_create :set_default_role # or # before_validation :set_default_role private def set_default_role self.role ||= Role.find_by_name('registered') end end
There was an error while loading. Please reload this page.