motion/adapters/array_finder_query.rb
def push(object)
      id_field = (@related_object.class.to_s.underscore + '_id=').to_sym
      object.send(id_field, @related_object.id)
      result = object.save
      result ||= @related_object.save
      result
    end
def push(object)
      id_field = (@related_object.class.to_s.underscore + '_id=').to_sym
      object.send(id_field, @related_object.id)
      result = object.save
      result ||= @related_object.save
      result
    end
Pushes an object onto an association. For e.g.:

    Task.find(3).assignees.push(assignee)

 This both establishes the relation and saves the related
 object, so make sure the related object is valid.