Module: Mongoid::Sequencer::ClassMethods
- Defined in:
- lib/mongoid/sequencer.rb
Instance Method Summary collapse
Instance Method Details
#next_sequence_value(field_name) ⇒ Object
8 9 10 11 12 13 14 15 16 17 |
# File 'lib/mongoid/sequencer.rb', line 8 def next_sequence_value(field_name) collection = ::Mongoid.default_session[:__sequence] counter_id = "#{self.name.underscore}_#{field_name}" collection.find( _id: counter_id ).modify( {'$inc' => {value: 1}}, new: true, upsert: true ).fetch('value') end |
#reset_sequence(field_name) ⇒ Object
19 20 21 22 23 24 25 26 27 28 |
# File 'lib/mongoid/sequencer.rb', line 19 def reset_sequence(field_name) collection = ::Mongoid.default_session[:__sequence] counter_id = "#{self.name.underscore}_#{field_name}" collection.find( _id: counter_id ).modify( {'$set' => {value: 0}}, new: true, upsert: true ).fetch('value') end |