Sha256: e7136c9584e4d88e39c55ad3caebb264216ac31e87fb9cf6424c7364772ea58e
Contents?: true
Size: 770 Bytes
Versions: 11
Compression:
Stored size: 770 Bytes
Contents
# encoding: utf-8 module Mongoid #:nodoc: module Persistence #:nodoc: module Atomic #:nodoc: # This class provides atomic $set behaviour. class Set include Operation # Sends the atomic $set operation to the database. # # @example Persist the new values. # set.persist # # @return [ Object ] The new field value. # # @ssete 2.0.0 def persist prepare do value ? document[field] = value : @value = document[field] document[field].tap do collection.update(document.atomic_selector, operation("$set"), options) document.remove_change(field) end end end end end end end
Version data entries
11 entries across 11 versions & 1 rubygems