mongoid-mapreduce 0.1.3 → 0.1.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/README.md CHANGED
@@ -38,7 +38,7 @@ class Employee
38
38
  end
39
39
  ```
40
40
 
41
- You can now use the *map_reduce* method on your model to aggregate data:
41
+ You can now use the *map_reduce* method on your model to aggregate data using your choice of aggregation formula.
42
42
 
43
43
  ```ruby
44
44
  # Create a few example employees
@@ -47,7 +47,7 @@ Employee.create :name => 'Bob', :division => 'Software', :age => 25, :awards =>
47
47
  Employee.create :name => 'Chris', :division => 'Hardware', :age => 30, :awards => 3, :male => 1, :rooms => [4,5,6]
48
48
  Employee.create :name => 'Darcy', :division => 'Sales', :age => 35, :awards => 3, :male => 0, :rooms => [1,2,3,4,5,6]
49
49
 
50
- # Aggregate formula: produces 3 records, one for each division.
50
+ # Aggregate formula (the default): produces 3 records, one for each division.
51
51
  divs = Employee.map_reduce(:division, :fields => [:age, :awards])
52
52
  divs.length # => 3
53
53
  divs.find('Software').age # => 45
@@ -58,7 +58,7 @@ divs.keys # => ['Hardware', 'Software', 'Sales']
58
58
  divs.has_key?('Sales') # => true
59
59
  divs.to_hash # => { "Software" => ..., "Hardware" => ..., "Sales" => ... }
60
60
 
61
- # Array Value formula: produces 6 records, one for each room.
61
+ # Array Value formula: produces 6 records, one for each room. Does not take any fields.
62
62
  rooms = Employee.map_reduce(:rooms, :formula => :array_values)
63
63
  rooms.length # => 6
64
64
  rooms.find(1)._count # => 3
@@ -12,8 +12,8 @@ module Mongoid
12
12
  options[:count_type] ||= Integer
13
13
  options[:count_field] ||= :_count
14
14
 
15
- if fields.length > 1
16
- raise "Error: The Array Values formula can only take 1 field"
15
+ if fields.any?
16
+ raise "Error: The Array Values formula does not take any fields. Please see documentation."
17
17
  end
18
18
 
19
19
  @field_name = options[:map_key]
@@ -1,7 +1,7 @@
1
1
  module Mongoid
2
2
  module MapReduce
3
3
 
4
- VERSION = '0.1.3'
4
+ VERSION = '0.1.4'
5
5
 
6
6
  end
7
7
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mongoid-mapreduce
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.3
4
+ version: 0.1.4
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -13,7 +13,7 @@ date: 2011-09-24 00:00:00.000000000Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: mongoid
16
- requirement: &70361782922640 !ruby/object:Gem::Requirement
16
+ requirement: &70155909706240 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ~>
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: '2.0'
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *70361782922640
24
+ version_requirements: *70155909706240
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: bson_ext
27
- requirement: &70361782922040 !ruby/object:Gem::Requirement
27
+ requirement: &70155909705640 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ~>
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: '1.3'
33
33
  type: :runtime
34
34
  prerelease: false
35
- version_requirements: *70361782922040
35
+ version_requirements: *70155909705640
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: growl
38
- requirement: &70361782921580 !ruby/object:Gem::Requirement
38
+ requirement: &70155909705180 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ! '>='
@@ -43,10 +43,10 @@ dependencies:
43
43
  version: '0'
44
44
  type: :development
45
45
  prerelease: false
46
- version_requirements: *70361782921580
46
+ version_requirements: *70155909705180
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: rake
49
- requirement: &70361782920960 !ruby/object:Gem::Requirement
49
+ requirement: &70155909704560 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ~>
@@ -54,10 +54,10 @@ dependencies:
54
54
  version: 0.9.2
55
55
  type: :development
56
56
  prerelease: false
57
- version_requirements: *70361782920960
57
+ version_requirements: *70155909704560
58
58
  - !ruby/object:Gem::Dependency
59
59
  name: rspec
60
- requirement: &70361782920360 !ruby/object:Gem::Requirement
60
+ requirement: &70155909703960 !ruby/object:Gem::Requirement
61
61
  none: false
62
62
  requirements:
63
63
  - - ~>
@@ -65,10 +65,10 @@ dependencies:
65
65
  version: '2.6'
66
66
  type: :development
67
67
  prerelease: false
68
- version_requirements: *70361782920360
68
+ version_requirements: *70155909703960
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: guard-rspec
71
- requirement: &70361782919780 !ruby/object:Gem::Requirement
71
+ requirement: &70155909703380 !ruby/object:Gem::Requirement
72
72
  none: false
73
73
  requirements:
74
74
  - - ~>
@@ -76,7 +76,7 @@ dependencies:
76
76
  version: 0.4.3
77
77
  type: :development
78
78
  prerelease: false
79
- version_requirements: *70361782919780
79
+ version_requirements: *70155909703380
80
80
  description: Mongoid MapReduce provides simple aggregation features for your Mongoid
81
81
  models
82
82
  email: