Быстрый ответ - нет.
В принципе, невозможно сохранить или обновить на диване, поскольку обновление существующего документа требовало номера редакции, и вам нужно будет сначала его увидеть.Здесь вам нужно будет обработать 404.
Чтобы быть более полезным, я бы, вероятно, использовал такой метод:
def save_or_create(db, doc)
begin
rev = db.get(doc['_id'])
doc['_rev'] = rev
db.save_doc(doc)
rescue RestClient::ResourceNotFound => nfe
db.save_doc(doc)
end
end
Не проверено, но должно быть близко.