mongoid 2.0.0.rc.3 → 2.0.0.rc.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/lib/mongoid.rb +1 -13
- data/lib/mongoid/attributes.rb +1 -1
- data/lib/mongoid/contexts/mongo.rb +20 -0
- data/lib/mongoid/criteria.rb +26 -5
- data/lib/mongoid/document.rb +14 -0
- data/lib/mongoid/extensions/set/conversions.rb +1 -1
- data/lib/mongoid/field.rb +2 -1
- data/lib/mongoid/persistence.rb +4 -3
- data/lib/mongoid/railtie.rb +18 -4
- data/lib/mongoid/relations/builder.rb +1 -0
- data/lib/mongoid/relations/embedded/in.rb +1 -0
- data/lib/mongoid/relations/embedded/many.rb +2 -1
- data/lib/mongoid/relations/embedded/one.rb +1 -0
- data/lib/mongoid/relations/macros.rb +9 -9
- data/lib/mongoid/relations/proxy.rb +18 -10
- data/lib/mongoid/relations/referenced/in.rb +3 -1
- data/lib/mongoid/relations/referenced/many.rb +3 -3
- data/lib/mongoid/relations/referenced/many_to_many.rb +12 -4
- data/lib/mongoid/relations/referenced/one.rb +3 -1
- data/lib/mongoid/version.rb +1 -1
- metadata +4 -6
- data/lib/mongoid/criterion/destructive.rb +0 -37
- data/lib/mongoid/deprecation.rb +0 -21
data/lib/mongoid.rb
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
# encoding: utf-8
|
2
2
|
|
3
|
-
# Copyright (c) 2009
|
3
|
+
# Copyright (c) 2009 - 2011 Durran Jordan and friends.
|
4
4
|
#
|
5
5
|
# Permission is hereby granted, free of charge, to any person obtaining
|
6
6
|
# a copy of this software and associated documentation files (the
|
@@ -52,7 +52,6 @@ require "mongoid/contexts"
|
|
52
52
|
require "mongoid/copyable"
|
53
53
|
require "mongoid/criteria"
|
54
54
|
require "mongoid/cursor"
|
55
|
-
require "mongoid/deprecation"
|
56
55
|
require "mongoid/default_scope"
|
57
56
|
require "mongoid/dirty"
|
58
57
|
require "mongoid/extras"
|
@@ -122,17 +121,6 @@ module Mongoid #:nodoc
|
|
122
121
|
block_given? ? yield(config) : config
|
123
122
|
end
|
124
123
|
alias :config :configure
|
125
|
-
|
126
|
-
# Easy convenience method for generating an alert from the
|
127
|
-
# deprecation module.
|
128
|
-
#
|
129
|
-
# @example Alert a deprecation.
|
130
|
-
# Mongoid.deprecate("Method no longer used")
|
131
|
-
#
|
132
|
-
# @param [ String ] message The message to print.
|
133
|
-
def deprecate(message)
|
134
|
-
Mongoid::Deprecation.alert(message)
|
135
|
-
end
|
136
124
|
end
|
137
125
|
|
138
126
|
# Take all the public instance methods from the Config singleton and allow
|
data/lib/mongoid/attributes.rb
CHANGED
@@ -303,6 +303,26 @@ module Mongoid #:nodoc:
|
|
303
303
|
options.dup
|
304
304
|
end
|
305
305
|
|
306
|
+
# Very basic update that will perform a simple atomic $set of the
|
307
|
+
# attributes provided in the hash. Can be expanded to later for more
|
308
|
+
# robust functionality.
|
309
|
+
#
|
310
|
+
# @example Update all matching documents.
|
311
|
+
# context.update_all(:title => "Sir")
|
312
|
+
#
|
313
|
+
# @param [ Hash ] attributes The sets to perform.
|
314
|
+
#
|
315
|
+
# @since 2.0.0.rc.4
|
316
|
+
def update_all(attributes = {})
|
317
|
+
klass.collection.update(
|
318
|
+
selector,
|
319
|
+
{ "$set" => attributes },
|
320
|
+
:multi => true,
|
321
|
+
:safe => Mongoid.persist_in_safe_mode
|
322
|
+
)
|
323
|
+
end
|
324
|
+
alias :update :update_all
|
325
|
+
|
306
326
|
protected
|
307
327
|
|
308
328
|
# Iterate over each +Document+ in the results and cache the collection.
|
data/lib/mongoid/criteria.rb
CHANGED
@@ -1,7 +1,6 @@
|
|
1
1
|
# encoding: utf-8
|
2
2
|
require "mongoid/criterion/creational"
|
3
3
|
require "mongoid/criterion/complex"
|
4
|
-
require "mongoid/criterion/destructive"
|
5
4
|
require "mongoid/criterion/exclusion"
|
6
5
|
require "mongoid/criterion/inclusion"
|
7
6
|
require "mongoid/criterion/inspection"
|
@@ -27,7 +26,6 @@ module Mongoid #:nodoc:
|
|
27
26
|
class Criteria
|
28
27
|
include Enumerable
|
29
28
|
include Criterion::Creational
|
30
|
-
include Criterion::Destructive
|
31
29
|
include Criterion::Exclusion
|
32
30
|
include Criterion::Inclusion
|
33
31
|
include Criterion::Inspection
|
@@ -35,9 +33,32 @@ module Mongoid #:nodoc:
|
|
35
33
|
|
36
34
|
attr_accessor :collection, :documents, :embedded, :ids, :klass, :options, :selector
|
37
35
|
|
38
|
-
delegate
|
39
|
-
|
40
|
-
|
36
|
+
delegate \
|
37
|
+
:aggregate,
|
38
|
+
:avg,
|
39
|
+
:blank?,
|
40
|
+
:count,
|
41
|
+
:delete,
|
42
|
+
:delete_all,
|
43
|
+
:destroy,
|
44
|
+
:destroy_all,
|
45
|
+
:distinct,
|
46
|
+
:empty?,
|
47
|
+
:execute,
|
48
|
+
:first,
|
49
|
+
:group,
|
50
|
+
:id_criteria,
|
51
|
+
:last,
|
52
|
+
:max,
|
53
|
+
:min,
|
54
|
+
:one,
|
55
|
+
:page,
|
56
|
+
:paginate,
|
57
|
+
:per_page,
|
58
|
+
:shift,
|
59
|
+
:sum,
|
60
|
+
:update,
|
61
|
+
:update_all, :to => :context
|
41
62
|
|
42
63
|
# Concatinate the criteria with another enumerable. If the other is a
|
43
64
|
# +Criteria+ then it needs to get the collection from it.
|
data/lib/mongoid/document.rb
CHANGED
@@ -204,6 +204,20 @@ module Mongoid #:nodoc:
|
|
204
204
|
|
205
205
|
module ClassMethods #:nodoc:
|
206
206
|
|
207
|
+
# Performs class equality checking.
|
208
|
+
#
|
209
|
+
# @example Compare the classes.
|
210
|
+
# document === other
|
211
|
+
#
|
212
|
+
# @param [ Document, Object ] other The other object to compare with.
|
213
|
+
#
|
214
|
+
# @return [ true, false ] True if the classes are equal, false if not.
|
215
|
+
#
|
216
|
+
# @since 2.0.0.rc.4
|
217
|
+
def ===(other)
|
218
|
+
self == (other.is_a?(Class) ? other : other.class)
|
219
|
+
end
|
220
|
+
|
207
221
|
# Instantiate a new object, only when loaded from the database or when
|
208
222
|
# the attributes have already been typecast.
|
209
223
|
#
|
data/lib/mongoid/field.rb
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
# encoding: utf-8
|
2
2
|
module Mongoid #:nodoc:
|
3
3
|
class Field
|
4
|
-
attr_reader :copyable, :klass, :name, :options, :type
|
4
|
+
attr_reader :copyable, :klass, :label, :name, :options, :type
|
5
5
|
|
6
6
|
# Get the default value for the field.
|
7
7
|
#
|
@@ -28,6 +28,7 @@ module Mongoid #:nodoc:
|
|
28
28
|
@type = options[:type] || Object
|
29
29
|
@name, @default = name, options[:default]
|
30
30
|
@copyable = (@default.is_a?(Array) || @default.is_a?(Hash))
|
31
|
+
@label = options[:label]
|
31
32
|
@options = options
|
32
33
|
check_default!
|
33
34
|
end
|
data/lib/mongoid/persistence.rb
CHANGED
@@ -95,7 +95,7 @@ module Mongoid #:nodoc:
|
|
95
95
|
#
|
96
96
|
# @return [ true, false ] True if validation passed, false if not.
|
97
97
|
def update_attributes(attributes = {})
|
98
|
-
write_attributes(attributes);
|
98
|
+
write_attributes(attributes); save
|
99
99
|
end
|
100
100
|
|
101
101
|
# Update the document attributes in the database and raise an error if
|
@@ -106,10 +106,11 @@ module Mongoid #:nodoc:
|
|
106
106
|
#
|
107
107
|
# @param [ Hash ] attributes The attributes to update.
|
108
108
|
#
|
109
|
+
# @raise [ Errors::Validations ] If validation failed.
|
110
|
+
#
|
109
111
|
# @return [ true, false ] True if validation passed.
|
110
112
|
def update_attributes!(attributes = {})
|
111
|
-
|
112
|
-
update.tap do |result|
|
113
|
+
update_attributes(attributes).tap do |result|
|
113
114
|
self.class.fail_validate!(self) unless result
|
114
115
|
end
|
115
116
|
end
|
data/lib/mongoid/railtie.rb
CHANGED
@@ -10,7 +10,20 @@ module Rails #:nodoc:
|
|
10
10
|
module Mongoid #:nodoc:
|
11
11
|
class Railtie < Rails::Railtie #:nodoc:
|
12
12
|
|
13
|
-
|
13
|
+
# Determine which generator to use. app_generators was introduced after
|
14
|
+
# 3.0.0.
|
15
|
+
#
|
16
|
+
# @example Get the generators method.
|
17
|
+
# railtie.generators
|
18
|
+
#
|
19
|
+
# @return [ Symbol ] The method name to use.
|
20
|
+
#
|
21
|
+
# @since 2.0.0.rc.4
|
22
|
+
def self.generator
|
23
|
+
config.respond_to?(:app_generators) ? :app_generators : :generators
|
24
|
+
end
|
25
|
+
|
26
|
+
config.send(generator).orm :mongoid, :migration => false
|
14
27
|
|
15
28
|
rake_tasks do
|
16
29
|
load "mongoid/railties/database.rake"
|
@@ -18,8 +31,7 @@ module Rails #:nodoc:
|
|
18
31
|
|
19
32
|
# Exposes Mongoid's configuration to the Rails application configuration.
|
20
33
|
#
|
21
|
-
#
|
22
|
-
#
|
34
|
+
# @example Set up configuration in the Rails app.
|
23
35
|
# module MyApplication
|
24
36
|
# class Application < Rails::Application
|
25
37
|
# config.mongoid.logger = Logger.new($stdout, :warn)
|
@@ -31,7 +43,7 @@ module Rails #:nodoc:
|
|
31
43
|
# Initialize Mongoid. This will look for a mongoid.yml in the config
|
32
44
|
# directory and configure mongoid appropriately.
|
33
45
|
#
|
34
|
-
#
|
46
|
+
# @example mongoid.yml
|
35
47
|
#
|
36
48
|
# defaults: &defaults
|
37
49
|
# host: localhost
|
@@ -93,6 +105,8 @@ module Rails #:nodoc:
|
|
93
105
|
end
|
94
106
|
end
|
95
107
|
|
108
|
+
# When workers are forked in passenger and unicorn, we need to reconnect
|
109
|
+
# to the database to all the workers do not share the same connection.
|
96
110
|
initializer "reconnect to master if application is preloaded" do
|
97
111
|
config.after_initialize do
|
98
112
|
|
@@ -174,6 +174,7 @@ module Mongoid # :nodoc:
|
|
174
174
|
def initialize(base, target, metadata)
|
175
175
|
init(base, target, metadata) do
|
176
176
|
target.each_with_index do |doc, index|
|
177
|
+
characterize_one(doc)
|
177
178
|
doc.parentize(base)
|
178
179
|
doc._index = index
|
179
180
|
end
|
@@ -275,7 +276,7 @@ module Mongoid # :nodoc:
|
|
275
276
|
# @since 2.0.0.rc.1
|
276
277
|
def append(document, options = {})
|
277
278
|
target << document
|
278
|
-
|
279
|
+
characterize_one(document)
|
279
280
|
bind_one(document, options)
|
280
281
|
document._index = target.size - 1
|
281
282
|
end
|
@@ -50,7 +50,7 @@ module Mongoid # :nodoc:
|
|
50
50
|
# @param [ Hash ] options The relation options.
|
51
51
|
# @param [ Proc ] block Optional block for defining extensions.
|
52
52
|
def embedded_in(name, options = {}, &block)
|
53
|
-
|
53
|
+
characterize(name, Embedded::In, options, &block).tap do |meta|
|
54
54
|
self.embedded = true
|
55
55
|
relate(name, meta)
|
56
56
|
end
|
@@ -76,7 +76,7 @@ module Mongoid # :nodoc:
|
|
76
76
|
# @param [ Hash ] options The relation options.
|
77
77
|
# @param [ Proc ] block Optional block for defining extensions.
|
78
78
|
def embeds_many(name, options = {}, &block)
|
79
|
-
|
79
|
+
characterize(name, Embedded::Many, options, &block).tap do |meta|
|
80
80
|
relate(name, meta)
|
81
81
|
validate_relation(meta)
|
82
82
|
end
|
@@ -102,7 +102,7 @@ module Mongoid # :nodoc:
|
|
102
102
|
# @param [ Hash ] options The relation options.
|
103
103
|
# @param [ Proc ] block Optional block for defining extensions.
|
104
104
|
def embeds_one(name, options = {}, &block)
|
105
|
-
|
105
|
+
characterize(name, Embedded::One, options, &block).tap do |meta|
|
106
106
|
relate(name, meta)
|
107
107
|
builder(name).creator(name)
|
108
108
|
validate_relation(meta)
|
@@ -128,7 +128,7 @@ module Mongoid # :nodoc:
|
|
128
128
|
# @param [ Hash ] options The relation options.
|
129
129
|
# @param [ Proc ] block Optional block for defining extensions.
|
130
130
|
def referenced_in(name, options = {}, &block)
|
131
|
-
|
131
|
+
characterize(name, Referenced::In, options, &block).tap do |meta|
|
132
132
|
relate(name, meta)
|
133
133
|
reference(meta)
|
134
134
|
end
|
@@ -156,7 +156,7 @@ module Mongoid # :nodoc:
|
|
156
156
|
# @param [ Proc ] block Optional block for defining extensions.
|
157
157
|
def references_many(name, options = {}, &block)
|
158
158
|
check_options(options)
|
159
|
-
|
159
|
+
characterize(name, Referenced::Many, options, &block).tap do |meta|
|
160
160
|
relate(name, meta)
|
161
161
|
reference(meta)
|
162
162
|
autosave(meta)
|
@@ -187,7 +187,7 @@ module Mongoid # :nodoc:
|
|
187
187
|
#
|
188
188
|
# @since 2.0.0.rc.1
|
189
189
|
def references_and_referenced_in_many(name, options = {}, &block)
|
190
|
-
|
190
|
+
characterize(name, Referenced::ManyToMany, options, &block).tap do |meta|
|
191
191
|
relate(name, meta)
|
192
192
|
reference(meta)
|
193
193
|
end
|
@@ -213,7 +213,7 @@ module Mongoid # :nodoc:
|
|
213
213
|
# @param [ Hash ] options The relation options.
|
214
214
|
# @param [ Proc ] block Optional block for defining extensions.
|
215
215
|
def references_one(name, options = {}, &block)
|
216
|
-
|
216
|
+
characterize(name, Referenced::One, options, &block).tap do |meta|
|
217
217
|
relate(name, meta)
|
218
218
|
reference(meta)
|
219
219
|
builder(name).creator(name).autosave(meta)
|
@@ -248,7 +248,7 @@ module Mongoid # :nodoc:
|
|
248
248
|
# Create the metadata for the relation.
|
249
249
|
#
|
250
250
|
# @example Create the metadata.
|
251
|
-
# Person.
|
251
|
+
# Person.characterize(:posts, Referenced::Many, {})
|
252
252
|
#
|
253
253
|
# @param [ Symbol ] name The name of the relation.
|
254
254
|
# @param [ Object ] relation The type of relation.
|
@@ -256,7 +256,7 @@ module Mongoid # :nodoc:
|
|
256
256
|
# @param [ Proc ] block Optional block for defining extensions.
|
257
257
|
#
|
258
258
|
# @return [ Metadata ] The metadata for the relation.
|
259
|
-
def
|
259
|
+
def characterize(name, relation, options, &block)
|
260
260
|
Metadata.new(
|
261
261
|
options.merge(
|
262
262
|
:relation => relation,
|
@@ -32,7 +32,6 @@ module Mongoid # :nodoc:
|
|
32
32
|
# @since 2.0.0.rc.1
|
33
33
|
def init(base, target, metadata, &block)
|
34
34
|
@base, @building, @target, @metadata = base, false, target, metadata
|
35
|
-
metadatafy(target)
|
36
35
|
yield block if block_given?
|
37
36
|
extend Module.new(&metadata.extension) if metadata.extension?
|
38
37
|
end
|
@@ -93,20 +92,29 @@ module Mongoid # :nodoc:
|
|
93
92
|
!target.is_a?(Mongoid::Criteria)
|
94
93
|
end
|
95
94
|
|
96
|
-
# Takes the supplied
|
95
|
+
# Takes the supplied documents and sets the metadata on them. Used when
|
97
96
|
# creating new documents and adding them to the relation.
|
98
97
|
#
|
99
98
|
# @example Set the metadata.
|
100
|
-
# proxy.
|
99
|
+
# proxy.characterize(addresses)
|
101
100
|
#
|
102
|
-
# @param [
|
103
|
-
# metadata on.
|
101
|
+
# @param [ Array<Document> ] documents The documents to set metadata on.
|
104
102
|
#
|
105
|
-
# @since 2.0.0.rc.
|
106
|
-
def
|
107
|
-
|
108
|
-
|
109
|
-
|
103
|
+
# @since 2.0.0.rc.4
|
104
|
+
def characterize(documents)
|
105
|
+
documents.each { |doc| characterize_one(doc) }
|
106
|
+
end
|
107
|
+
|
108
|
+
# Takes the supplied document and sets the metadata on it.
|
109
|
+
#
|
110
|
+
# @example Set the metadata.
|
111
|
+
# proxt.characterize_one(name)
|
112
|
+
#
|
113
|
+
# @param [ Document ] document The document to set on.
|
114
|
+
#
|
115
|
+
# @since 2.0.0.rc.4
|
116
|
+
def characterize_one(document)
|
117
|
+
document.metadata = metadata unless document.metadata
|
110
118
|
end
|
111
119
|
|
112
120
|
# Default behavior of method missing should be to delegate all calls
|
@@ -40,7 +40,9 @@ module Mongoid # :nodoc:
|
|
40
40
|
# relation.
|
41
41
|
# @param [ Metadata ] metadata The relation's metadata.
|
42
42
|
def initialize(base, target, metadata)
|
43
|
-
init(base, target, metadata)
|
43
|
+
init(base, target, metadata) do
|
44
|
+
characterize_one(target)
|
45
|
+
end
|
44
46
|
end
|
45
47
|
|
46
48
|
# Substitutes the supplied target documents for the existing document
|
@@ -25,7 +25,7 @@ module Mongoid #:nodoc:
|
|
25
25
|
#
|
26
26
|
# @since 2.0.0.rc.1
|
27
27
|
def bind(options = {})
|
28
|
-
binding.bind(options)
|
28
|
+
loaded and binding.bind(options)
|
29
29
|
target.map(&:save) if base.persisted? && !options[:building]
|
30
30
|
end
|
31
31
|
|
@@ -202,7 +202,7 @@ module Mongoid #:nodoc:
|
|
202
202
|
# @since 2.0.0.rc.1
|
203
203
|
def append(document, options = {})
|
204
204
|
loaded and target.push(document)
|
205
|
-
|
205
|
+
characterize_one(document)
|
206
206
|
binding.bind_one(document, options)
|
207
207
|
end
|
208
208
|
|
@@ -242,7 +242,7 @@ module Mongoid #:nodoc:
|
|
242
242
|
# @since 2.0.0.rc.1
|
243
243
|
def loaded
|
244
244
|
tap do |relation|
|
245
|
-
relation.target = target.entries
|
245
|
+
relation.target = target.entries unless loaded?
|
246
246
|
end
|
247
247
|
end
|
248
248
|
|
@@ -25,7 +25,7 @@ module Mongoid # :nodoc:
|
|
25
25
|
#
|
26
26
|
# @since 2.0.0.rc.1
|
27
27
|
def bind(options = {})
|
28
|
-
binding.bind(options)
|
28
|
+
loaded and binding.bind(options)
|
29
29
|
target.map(&:save) if base.persisted? && !options[:building]
|
30
30
|
end
|
31
31
|
|
@@ -173,8 +173,16 @@ module Mongoid # :nodoc:
|
|
173
173
|
# @return [ Many ] The relation.
|
174
174
|
#
|
175
175
|
# @since 2.0.0.rc.1
|
176
|
-
def substitute(
|
177
|
-
tap
|
176
|
+
def substitute(new_target, options = {})
|
177
|
+
tap do |relation|
|
178
|
+
if new_target
|
179
|
+
binding.unbind(options)
|
180
|
+
relation.target = new_target.to_a
|
181
|
+
bind(options)
|
182
|
+
else
|
183
|
+
relation.target = unbind(options)
|
184
|
+
end
|
185
|
+
end
|
178
186
|
end
|
179
187
|
|
180
188
|
# Unbinds the base object to the inverse of the relation. This occurs
|
@@ -211,7 +219,7 @@ module Mongoid # :nodoc:
|
|
211
219
|
# @since 2.0.0.rc.1
|
212
220
|
def append(document, options = {})
|
213
221
|
loaded and target.push(document)
|
214
|
-
|
222
|
+
characterize_one(document)
|
215
223
|
binding.bind_one(document, options)
|
216
224
|
end
|
217
225
|
|
@@ -39,7 +39,9 @@ module Mongoid # :nodoc:
|
|
39
39
|
# @param [ Document ] target The target (child) of the relation.
|
40
40
|
# @param [ Metadata ] metadata The relation's metadata.
|
41
41
|
def initialize(base, target, metadata)
|
42
|
-
init(base, target, metadata)
|
42
|
+
init(base, target, metadata) do
|
43
|
+
characterize_one(target)
|
44
|
+
end
|
43
45
|
end
|
44
46
|
|
45
47
|
# Removes the association between the base document and the target
|
data/lib/mongoid/version.rb
CHANGED
metadata
CHANGED
@@ -7,8 +7,8 @@ version: !ruby/object:Gem::Version
|
|
7
7
|
- 0
|
8
8
|
- 0
|
9
9
|
- rc
|
10
|
-
-
|
11
|
-
version: 2.0.0.rc.
|
10
|
+
- 4
|
11
|
+
version: 2.0.0.rc.4
|
12
12
|
platform: ruby
|
13
13
|
authors:
|
14
14
|
- Durran Jordan
|
@@ -16,7 +16,7 @@ autorequire:
|
|
16
16
|
bindir: bin
|
17
17
|
cert_chain: []
|
18
18
|
|
19
|
-
date: 2011-01-
|
19
|
+
date: 2011-01-13 00:00:00 +01:00
|
20
20
|
default_executable:
|
21
21
|
dependencies:
|
22
22
|
- !ruby/object:Gem::Dependency
|
@@ -183,7 +183,6 @@ files:
|
|
183
183
|
- lib/mongoid/criteria.rb
|
184
184
|
- lib/mongoid/criterion/complex.rb
|
185
185
|
- lib/mongoid/criterion/creational.rb
|
186
|
-
- lib/mongoid/criterion/destructive.rb
|
187
186
|
- lib/mongoid/criterion/exclusion.rb
|
188
187
|
- lib/mongoid/criterion/inclusion.rb
|
189
188
|
- lib/mongoid/criterion/inspection.rb
|
@@ -191,7 +190,6 @@ files:
|
|
191
190
|
- lib/mongoid/criterion/selector.rb
|
192
191
|
- lib/mongoid/cursor.rb
|
193
192
|
- lib/mongoid/default_scope.rb
|
194
|
-
- lib/mongoid/deprecation.rb
|
195
193
|
- lib/mongoid/dirty.rb
|
196
194
|
- lib/mongoid/document.rb
|
197
195
|
- lib/mongoid/errors/document_not_found.rb
|
@@ -356,7 +354,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
356
354
|
requirements:
|
357
355
|
- - ">="
|
358
356
|
- !ruby/object:Gem::Version
|
359
|
-
hash:
|
357
|
+
hash: 588977190582466333
|
360
358
|
segments:
|
361
359
|
- 0
|
362
360
|
version: "0"
|
@@ -1,37 +0,0 @@
|
|
1
|
-
# encoding: utf-8
|
2
|
-
module Mongoid #:nodoc:
|
3
|
-
module Criterion #:nodoc:
|
4
|
-
|
5
|
-
# This module defines criteria behavior for deleting or destroying
|
6
|
-
# documents.
|
7
|
-
module Destructive
|
8
|
-
|
9
|
-
# Delete all documents in the database that match the criteria.
|
10
|
-
#
|
11
|
-
# @example Delete all matching documents.
|
12
|
-
# Person.where(:title => "Sir").and(:age.gt => 5).delete_all
|
13
|
-
#
|
14
|
-
# @return [ Integer ] The number of documents deleted.
|
15
|
-
#
|
16
|
-
# @since 2.0.0.rc.1
|
17
|
-
def delete_all
|
18
|
-
context.delete_all
|
19
|
-
end
|
20
|
-
alias :delete :delete_all
|
21
|
-
|
22
|
-
# Destroy all documents in the database that match the criteria. Will run
|
23
|
-
# the destruction callbacks on each document as well.
|
24
|
-
#
|
25
|
-
# @example Destroy all matching documents.
|
26
|
-
# Person.where(:title => "Sir").and(:age.gt => 5).destroy_all
|
27
|
-
#
|
28
|
-
# @return [ Integer ] The number of documents destroyed.
|
29
|
-
#
|
30
|
-
# @since 2.0.0.rc.1
|
31
|
-
def destroy_all
|
32
|
-
context.destroy_all
|
33
|
-
end
|
34
|
-
alias :destroy :destroy_all
|
35
|
-
end
|
36
|
-
end
|
37
|
-
end
|
data/lib/mongoid/deprecation.rb
DELETED
@@ -1,21 +0,0 @@
|
|
1
|
-
# encoding: utf-8
|
2
|
-
module Mongoid #:nodoc:
|
3
|
-
module Deprecation #:nodoc
|
4
|
-
extend self
|
5
|
-
|
6
|
-
# Alert of a deprecation. This will delegate to the logger and call warn on
|
7
|
-
# it.
|
8
|
-
#
|
9
|
-
# Example:
|
10
|
-
#
|
11
|
-
# <tt>deprecation.alert("Method no longer used")</tt>
|
12
|
-
def alert(message)
|
13
|
-
logger.warn("Deprecation: #{message}")
|
14
|
-
end
|
15
|
-
|
16
|
-
protected
|
17
|
-
def logger
|
18
|
-
@logger ||= Mongoid::Logger.new
|
19
|
-
end
|
20
|
-
end
|
21
|
-
end
|