mongocore 0.2.1 → 0.2.2

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: e2b421c9156412c98e0da302d515db0283ba45ba
4
- data.tar.gz: a14a5b1d90a91328eab16f8d2e6f083725ab8658
3
+ metadata.gz: 28fcb4fb984516032b665605855fa978c7d8cda2
4
+ data.tar.gz: ecdb708c8470c2aec2cd624bdc35457e1fedb547
5
5
  SHA512:
6
- metadata.gz: c95e808a73109dbb45e4fb1538028c6cc453501a1fa90dcbae5ff3d0e2cc6ceb66fd9d0187a238dde05ca82df04e91ee50e438a3de73cc68198aba7eeff360b7
7
- data.tar.gz: e904842600c7643bf831745ff487639e0b64b6221092eb650f9b7c8f657d90cbc526bbc5211ba3a75036cde2ae777d9ecf85225af4e53a6ec26940f31948e519
6
+ metadata.gz: 9bd1c5dc2e11c6d3422a1fef2ac7e6c7e7b2f169cc5016da379f6d5dbb42e60b86fb06a40a2f488bd7724dea34e19d79597be5dd1eb45fc9efe13f52e117a077
7
+ data.tar.gz: ad17bff6efbe5f07828d5f0f452a53bc21af5108e878ae48fa54c34f86e59f18f80e7e34b5a5ce0a7e14f5ee2d4a9beee80636c016ca7723b4c87ad9da15d6d9
data/README.md CHANGED
@@ -21,7 +21,7 @@ Please read [the source code](https://github.com/fugroup/mongocore/tree/master/l
21
21
  | -------------------------------------- | ----- | ------- | ------------- |
22
22
  | [Mongoid](http://mongoid.com) | 256 | 14371 | 10590 |
23
23
  | [MongoMapper](http://mongomapper.com) | 91 | 200 | 4070 |
24
- | [Mongocore](http://mongocore.com) | 8 | 256 | 454 |
24
+ | [Mongocore](http://mongocore.com) | 8 | 254 | 448 |
25
25
 
26
26
  <br>
27
27
 
data/lib/mongocore/ext.rb CHANGED
@@ -18,3 +18,13 @@ class String
18
18
  end
19
19
 
20
20
  end
21
+
22
+ module BSON
23
+ class ObjectId
24
+
25
+ def as_json(o = {})
26
+ self.to_s
27
+ end
28
+
29
+ end
30
+ end
@@ -52,10 +52,10 @@ module Mongocore
52
52
  ids(transform(v))
53
53
  when Array
54
54
  # Return mapped array or recurse hashes
55
- h[k] = v.map{|r| r.is_a?(Hash) ? ids(transform(r)) : oid(r)}
55
+ h[k] = v.map{|r| r.is_a?(Hash) ? ids(transform(r)) : @model.schema.oid(r)}
56
56
  else
57
57
  # Convert to object ID if applicable
58
- h[k] = oid(v) if v.is_a?(String)
58
+ h[k] = @model.schema.oid(v) if v.is_a?(String)
59
59
  end
60
60
  end
61
61
  end
@@ -128,10 +128,10 @@ module Mongocore
128
128
  o[:per_page] = o[:per_page].to_i; o[:per_page] = Mongocore.per_page if o[:per_page] < 1
129
129
 
130
130
  # Skip results
131
- store[:skip] = o[:per_page] * (o[:page] - 1)
131
+ @store[:skip] = o[:per_page] * (o[:page] - 1)
132
132
 
133
133
  # Apply limit
134
- store[:limit] = o[:per_page]
134
+ @store[:limit] = o[:per_page]
135
135
 
136
136
  # Fetch the result as array
137
137
  all.tap{|r| r.total = total}
@@ -185,16 +185,6 @@ module Mongocore
185
185
  @key ||= "#{@model}#{@query.sort}#{@options.sort}#{@store.values}"
186
186
  end
187
187
 
188
- # Schema short cut for oid
189
- def oid(k)
190
- @model.schema.oid(k)
191
- end
192
-
193
- # Schema short cut for oid?
194
- def oid?(k)
195
- @model.schema.oid?(k)
196
- end
197
-
198
188
  # Call and return the scope if it exists
199
189
  def method_missing(name, *arguments, &block)
200
190
  return @model.send(name, @query, @options, @store.tap{@store[:chain] << name}) if @model.schema.scopes.has_key?(name)
@@ -67,11 +67,6 @@ module Mongocore
67
67
  @keys[key][:type].to_sym rescue :string
68
68
  end
69
69
 
70
- # This key is a BSON::Object ID?
71
- def oid?(key)
72
- find_type(key) === :object_id
73
- end
74
-
75
70
  # Convert to BSON::ObjectId
76
71
  def oid(id = nil)
77
72
  return id if id.is_a?(BSON::ObjectId)
data/lib/mongocore.rb CHANGED
@@ -7,7 +7,7 @@ require 'mongo'
7
7
  require 'request_store'
8
8
 
9
9
  module Mongocore
10
- VERSION = '0.2.1'
10
+ VERSION = '0.2.2'
11
11
 
12
12
  # # # # # #
13
13
  # Mongocore Ruby Database Driver.
data/mongocore.gemspec CHANGED
@@ -1,6 +1,6 @@
1
1
  Gem::Specification.new do |s|
2
2
  s.name = 'mongocore'
3
- s.version = '0.2.1'
3
+ s.version = '0.2.2'
4
4
  s.date = '2017-10-27'
5
5
  s.summary = "MongoDB ORM implementation on top of the Ruby MongoDB driver"
6
6
  s.description = "Does validations, associations, scopes, filters, pagination, counter cache, request cache, and nested queries. Using a YAML schema file, which supports default values, data types, and security levels for each key."
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mongocore
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.1
4
+ version: 0.2.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Fugroup Limited