Module: Mongoid::Fromage::ClassMethods

Defined in:
lib/mongoid/fromage.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#rolesObject

Returns the value of attribute roles.



54
55
56
# File 'lib/mongoid/fromage.rb', line 54

def roles
  @roles
end

Instance Method Details

#fromages(*argv) ⇒ Object



56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
# File 'lib/mongoid/fromage.rb', line 56

def fromages(*argv)
  if argv.last.is_a?(Hash)
    options = argv.pop
  end
  self.roles = argv

  # define helper methods for roles
  roles.each do |role|
    define_method "#{role}?" do
      has_role? role
    end

    define_method "#{role}!" do
      add_role!(role)
    end

    define_method "un_#{role}!" do
      remove_role!(role)
    end
  end

  if options && options.has_key?(:defaults)
    self.fromage_defaults = options[:defaults]
  end
end