module Mongoid::Fromage

Public Instance Methods

add_role(*roles) click to toggle source
# File lib/mongoid/fromage.rb, line 19
def add_role(*roles)
  self.roles += roles
end
add_role!(*args) click to toggle source
# File lib/mongoid/fromage.rb, line 23
def add_role!(*args)
  add_role(*args)
  save
end
has_role?(role) click to toggle source
# File lib/mongoid/fromage.rb, line 37
def has_role?(role)
  roles.include? role
end
has_roles?(*args) click to toggle source
# File lib/mongoid/fromage.rb, line 41
def has_roles?(*args)
  args.all? {|role| has_role?(role) }
end
remove_role(role) click to toggle source
# File lib/mongoid/fromage.rb, line 28
def remove_role(role)
  self.roles = self.roles.delete(role)
end
remove_role!(role) click to toggle source
# File lib/mongoid/fromage.rb, line 32
def remove_role!(role)
  remove_role(role)
  save
end

Protected Instance Methods

valid_roles?() click to toggle source
# File lib/mongoid/fromage.rb, line 47
def valid_roles?
  if (roles - self.class.roles).any?
    errors.add(:roles, :not_included)
  end
end