mongoid-dsl 1.0.1 → 1.0.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: 55982f2dfe0534e050096105b911bc050d121221
4
- data.tar.gz: 49782fd0a004ea08e9204e124d87e050b539dfeb
3
+ metadata.gz: 372d53d1aed4d20d50950a902a1afc589e63ad38
4
+ data.tar.gz: 3ff39915be54309d206c31f0f32ab706b4de2e22
5
5
  SHA512:
6
- metadata.gz: 588e358725dc0eabf3f13d870dc498f43b0b2bea5f9e49a33319681a26cf6705a4cb54870c233a061749b5c49c9598b703023c9d726f2a6e474a70c2b490146c
7
- data.tar.gz: 6b5c15c7169f27e71a17cd298b2bf75cc76192fcb109c8b8224fa9b12ccaf953e7a93970b5ae7b2e80e747d1c020905044a289ed13050f19948e648263db36d7
6
+ metadata.gz: a86d8aab7e0013a166222f6d2b9fdb77757d4205eefefee51864a93063bec01758f1b7cec61cf6affec5703c098b1954f41a52d22dfc69bf33a3e76550d82f06
7
+ data.tar.gz: 445636d49a606e87561b1cd168b23fb23846e625027ea99aacbca08ca746e079f14f78bc0599d171df52643065fa5e07249c52c84262e1a92cf2b679df36a5d0
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.0.1
1
+ 1.0.2
@@ -1 +1,2 @@
1
- Mongoid.load!(File.join(File.dirname(__FILE__),"mongoid.yml"), :development)
1
+ Mongoid.load!(File.join(File.dirname(__FILE__),"mongoid.yml"), :development)
2
+ I18n.enforce_available_locales = false
@@ -0,0 +1,64 @@
1
+
2
+ class TestA
3
+
4
+ include Mongoid::Document
5
+ include Mongoid::Timestamps
6
+ include Mongoid::CRUD
7
+
8
+ store_in :collection => self.mongoid_name
9
+
10
+ embeds_many :TestB.mongoid_name
11
+
12
+ # field :test,
13
+ # :type => String,
14
+ # :presence => true,
15
+ # :desc => "description for this field",
16
+ # :accept_only => %W[ hello world hello\ world ]
17
+
18
+ end
19
+
20
+ class TestB
21
+
22
+ include Mongoid::Document
23
+ include Mongoid::Timestamps
24
+ include Mongoid::CRUD
25
+
26
+ embedded_in :TestA.mongoid_name
27
+ embeds_many :TestC.mongoid_name
28
+
29
+ # field :test,
30
+ # :type => String,
31
+ # :presence => true,
32
+ # :desc => "description for this field",
33
+ # :uniq => true
34
+
35
+ end
36
+
37
+ class TestC
38
+
39
+ include Mongoid::Document
40
+ include Mongoid::Timestamps
41
+
42
+ embedded_in :TestB.mongoid_name
43
+ embeds_many :TestD.mongoid_name
44
+
45
+ field :test,
46
+ :type => String,
47
+ :presence => true,
48
+ :desc => "description for this field"
49
+
50
+ end
51
+
52
+ class TestD
53
+
54
+ include Mongoid::Document
55
+ include Mongoid::Timestamps
56
+
57
+ embedded_in :TestC.mongoid_name
58
+
59
+ field :test,
60
+ :type => String,
61
+ :presence => true,
62
+ :desc => "description for this field"
63
+
64
+ end
@@ -0,0 +1,18 @@
1
+ require_relative "../lib/mongoid-dsl"
2
+ require_relative "helper/connection"
3
+
4
+ class TestD
5
+
6
+ include Mongoid::Document
7
+ include Mongoid::Timestamps
8
+
9
+ # for manual include but by default after require the module it will happen on the fly!
10
+ include Mongoid::DSL
11
+
12
+ store_in :collection => self.mongoid_name
13
+
14
+ field :test,
15
+ :type => String,
16
+ :desc => "description for this field"
17
+
18
+ end
@@ -1,71 +1,6 @@
1
1
  require_relative "../lib/mongoid-dsl"
2
- require_relative "helper/con"
3
-
4
- :TestA.mongoid_name #> nil
5
-
6
- class TestA
7
-
8
- include Mongoid::Document
9
- include Mongoid::Timestamps
10
-
11
- store_in :collection => self.mongoid_name
12
-
13
- embeds_many :TestB.mongoid_name
14
-
15
- field :test,
16
- :type => String,
17
- :presence => true,
18
- :desc => "description for this field",
19
- :accept_only => %W[ hello world hello\ world ]
20
-
21
- end
22
-
23
- :TestA.mongoid_name #> "test_a"
24
-
25
- class TestB
26
-
27
- include Mongoid::Document
28
- include Mongoid::Timestamps
29
-
30
- embedded_in :TestA.mongoid_name
31
- embeds_many :TestC.mongoid_name
32
-
33
- field :test,
34
- :type => String,
35
- :presence => true,
36
- :desc => "description for this field",
37
- :uniq => true
38
-
39
- end
40
-
41
- class TestC
42
-
43
- include Mongoid::Document
44
- include Mongoid::Timestamps
45
-
46
- embedded_in :TestB.mongoid_name
47
- embeds_many :TestD.mongoid_name
48
-
49
- field :test,
50
- :type => String,
51
- :presence => true,
52
- :desc => "description for this field"
53
-
54
- end
55
-
56
- class TestD
57
-
58
- include Mongoid::Document
59
- include Mongoid::Timestamps
60
-
61
- embedded_in :TestC.mongoid_name
62
-
63
- field :test,
64
- :type => String,
65
- :presence => true,
66
- :desc => "description for this field"
67
-
68
- end
2
+ require_relative "helper/connection"
3
+ require_relative "helper/models"
69
4
 
70
5
  test_a= TestA.create! test: "hello"
71
6
  test_a.test_b.create(test: "world")
@@ -74,11 +74,6 @@ module Mongoid
74
74
  end
75
75
  end
76
76
 
77
- #> not yet finished
78
- def available_fields
79
- Mongoid::Document.available_fields(self)
80
- end
81
-
82
77
  def properties
83
78
 
84
79
  hash_data = Hash.new
@@ -125,7 +120,7 @@ module Mongoid
125
120
  end
126
121
  end
127
122
 
128
- def get_path(*included)
123
+ def _get_class_path(*included)
129
124
 
130
125
  # create defaults
131
126
  begin
@@ -322,7 +317,7 @@ module Mongoid
322
317
  # mother model find, and path generate
323
318
  begin
324
319
 
325
- full_path = self.get_path(*models_container) || Array.new.push(self)
320
+ full_path = self._get_class_path(*models_container) || Array.new.push(self)
326
321
  mother_model= full_path.shift
327
322
 
328
323
  full_path.count.times do |index|
@@ -622,14 +617,24 @@ module Mongoid
622
617
 
623
618
  end
624
619
 
620
+ # for manual include
621
+ begin
622
+ self.__send__ :include, Mongoid::DSL::Document::Include
623
+ def self.included klass
624
+ klass.__send__ :extend,Mongoid::DSL::Document::Extend
625
+ end
626
+ end
627
+
625
628
  end
626
629
  end
627
630
 
628
631
  begin
632
+
629
633
  Mongoid::Config.inject_singleton_method :register_model, add: :before do |klass|
630
634
  klass.__send__ :extend, Mongoid::DSL::Document::Extend
631
635
  klass.__send__ :include, Mongoid::DSL::Document::Include
632
636
  end
637
+
633
638
  rescue NoMethodError
634
639
  end
635
640
 
@@ -642,4 +647,4 @@ end
642
647
  class_name.__send__ :include, Mongoid::DSL::CoreExt::Include
643
648
  end
644
649
 
645
- String.__send__ :include, Mongoid::DSL::StringExt::Include
650
+ String.__send__ :include, Mongoid::DSL::StringExt::Include
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mongoid-dsl
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.1
4
+ version: 1.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Adam Luzsi
@@ -94,8 +94,10 @@ files:
94
94
  - README.md
95
95
  - Rakefile
96
96
  - VERSION
97
- - examples/helper/con.rb
97
+ - examples/helper/connection.rb
98
+ - examples/helper/models.rb
98
99
  - examples/helper/mongoid.yml
100
+ - examples/include.rb
99
101
  - examples/recursive_find.rb
100
102
  - lib/mongoid-dsl.rb
101
103
  - lib/mongoid-dsl/fields-ext.rb