mongocore 0.4.1 → 0.4.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: f423817d911435069c35d9df2d045fdbe92db2ed
4
- data.tar.gz: b621452a8e46757909ff4d890abc1a2fd7dedff0
3
+ metadata.gz: 9d85eb2ea5445bfc95e054d6d1db6acd40a600d4
4
+ data.tar.gz: 9b164e319645a06750b6bbba78848007d9864cbf
5
5
  SHA512:
6
- metadata.gz: bcbc8a4d12142eb73d1bf88e915b985df87322ff2fbbe888ec8783eb1750e876ece02507fd8dd139adf67220bb4f5994adec4d63cb547b1c55b6c865b4529ac0
7
- data.tar.gz: d1d4c3fb4080dd226d37e91a220866f0aba13734fcf020f2a8c98ad5557a685c6c7795e9ccb9c049397271b6fa747536c106c2030d1448b3896c2a8284bae0f0
6
+ metadata.gz: e6378aaa0c4548bcb15d67ae0ad34211ae5938c4d555be3022f40d0078d48151d6b95c33abdd4f151960d882e229c37694ef4e887eebcc1def9fcd70ff829c90
7
+ data.tar.gz: e936f449d87d351d095c86ef67517de817dc1e195bf6b14906ef0e7d9fb09d6f265c812e06d9c4d7c67925b428018a79eb7f46dad475b58f6d48742bcf56c02d
data/CHANGELOG.md CHANGED
@@ -1,3 +1,14 @@
1
+ **Version 0.4.2** - *2018-01-19*
2
+
3
+ - Reset model properly when doing a reload
4
+ - Removed update filter, both save and update uses the :save filter
5
+
6
+
7
+ **Version 0.4.1** - *2018-01-10*
8
+
9
+ - Automatically convert to Time for date if it's a Date or String
10
+
11
+
1
12
  **Version 0.4.0** - *2017-12-01*
2
13
 
3
14
  - Added each_with_index, each_with_object and map
data/README.md CHANGED
@@ -217,7 +217,7 @@ class Model
217
217
  errors[:goal] << 'you need a higher goal' if goal and goal < 5
218
218
  end
219
219
 
220
- # Before and after, filters: :save, :update, :delete
220
+ # Before and after filters: :save, :delete
221
221
  # You can have multiple blocks for each filter if needed
222
222
  before :save, :setup
223
223
 
@@ -235,7 +235,7 @@ Mongocore.db[:models].find.to_a
235
235
  Mongocore.db[:models].find({:_id => m._id}).first
236
236
 
237
237
  # Indexing
238
- Mongocore.db[:models].indexes.create_one({:key => 1})
238
+ Mongocore.db[:models].indexes.create_one(:key => 1)
239
239
  Mongocore.db[:models].indexes.create_one({:key => 1}, :unique => true)
240
240
  ```
241
241
 
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.4.1'
10
+ VERSION = '0.4.2'
11
11
 
12
12
  # # # # # #
13
13
  # Mongocore Ruby Database Driver.
@@ -77,7 +77,7 @@ module Mongocore
77
77
 
78
78
  # Update document in db
79
79
  def update(a = {}, o = {})
80
- self.attributes = a; persist(:update, o)
80
+ self.attributes = a; save(o)
81
81
  end
82
82
 
83
83
  # Delete a document in db
@@ -92,7 +92,7 @@ module Mongocore
92
92
 
93
93
  # Reload the document from db and update attributes
94
94
  def reload
95
- one.first.tap{|m| self.attributes = m.attributes}
95
+ one.first.tap{|m| self.attributes = m.attributes; @original = m.attributes.dup; @changes.clear; @errors.clear}
96
96
  end
97
97
 
98
98
  # Set the timestamps if enabled
@@ -17,7 +17,7 @@ module Mongocore
17
17
  @before = Hash.new{|h, k| h[k] = []}
18
18
 
19
19
  # Add timestamp filters if enabled
20
- [:save, :update].each{|f| @before[f] << :timestamps} if Mongocore.timestamps
20
+ @before[:save] << :timestamps if Mongocore.timestamps
21
21
 
22
22
  # The after filters
23
23
  @after = Hash.new{|h, k| h[k] = []}
@@ -31,7 +31,7 @@ module Mongocore
31
31
  @validate.each{|k| call(k, m)}; m.errors.empty?
32
32
  end
33
33
 
34
- # Available filters are :save, :update, :delete
34
+ # Available filters are :save, :delete
35
35
  def run(m, f, key = nil)
36
36
  send(f)[key].each{|k| call(k, m)}
37
37
  end
data/models/model.rb CHANGED
@@ -14,10 +14,6 @@ class Model
14
14
  (@list ||= []) << 'before_save'
15
15
  end
16
16
 
17
- before :update do
18
- (@list ||= []) << 'before_update'
19
- end
20
-
21
17
  before :delete do
22
18
  (@list ||= []) << 'before_delete'
23
19
  end
@@ -26,15 +22,11 @@ class Model
26
22
  (@list ||= []) << 'after_save'
27
23
  end
28
24
 
29
- after :update do
30
- (@list ||= []) << 'after_update'
31
- end
32
-
33
25
  after :delete do
34
26
  (@list ||= []) << 'after_delete'
35
27
  end
36
28
 
37
- # Save, update, delete
29
+ # Save, delete
38
30
  # before :delete, :hello
39
31
  # after(:delete){ puts "Hello" }
40
32
 
data/mongocore.gemspec CHANGED
@@ -1,7 +1,7 @@
1
1
  Gem::Specification.new do |s|
2
2
  s.name = 'mongocore'
3
- s.version = '0.4.1'
4
- s.date = '2018-01-10'
3
+ s.version = '0.4.2'
4
+ s.date = '2018-01-19'
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."
7
7
  s.authors = ['Fugroup Limited']
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mongocore
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.1
4
+ version: 0.4.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Fugroup Limited
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-01-10 00:00:00.000000000 Z
11
+ date: 2018-01-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: mongo