Method: Parse::Core::Actions#change_requests
- Defined in:
- lib/parse/model/core/actions.rb
#change_requests(force = false) ⇒ Array<Parse::Request>
Creates an array of all possible operations that need to be performed on this object. This includes all property and relational operation changes.
384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 |
# File 'lib/parse/model/core/actions.rb', line 384 def change_requests(force = false) requests = [] # get the URI path for this object. uri = self.uri_path # generate the request to update the object (PUT) if attribute_changes? || force # if it's new, then we should call :post for creating the object. method = new? ? :post : :put r = Request.new(method, uri, body: attribute_updates) r.tag = object_id requests << r end # if the object is not new, then we can also add all the relational changes # we need to perform. if @id.present? && relation_changes? relation_change_operations.each do |ops| next if ops.empty? r = Request.new(:put, uri, body: ops) r.tag = object_id requests << r end end requests end |