2015-01-20 4 views
0

Мне поручено изменить устаревшее приложение, чтобы пользователи могли загружать корректировки заработной платы навалом. В настоящее время они должны заполнить форму и ввести элемент данных по элементу, нажав submit после каждого. Я даю им возможность загружать CSV-файл, содержащий тонны настроек сразу.Как вставить документы couchdb оптом?

На сервере они вставляете элементы в кушетке один за другим, как это:

function wsapiPOST(req, res, next) { 
    var path = req.path.substr(6) 
    , url = couchPath + path + requestUtil.buildQueryString(req); 

    request.post({ 
    url: url, 
    headers: { 'content-type': 'application/json' }, 
    body: JSON.stringify(req.body) 
    },function (err, resp, body) { 
    if (err) { 
     if (resp) { 
     res.writeHead(resp.statusCode); 
     res.end(body); 
     } else { // This would happen if the request timed out 
     res.writeHead(408); 
     res.end('timeout'); 
     } 
    } 
    }).pipe(res); 
} 

Кушетка URL построен динамически.

req.body содержит свойства для одного элемента.

Я новичок в кушетку, но я не уверен, как отправить несколько документов для вставки в одной операции. Я мог бы выкинуть вызов в цикл как есть, но я думаю, что это не будет очень результативным.

Мне просто нужно указать в правильном направлении для массового ввода в кушетку через свой REST API. Благодаря!

+0

Можете ли вы просто отправить массив остальным api? –

ответ

1

Вы можете использовать bulk document API для вставки (и даже обновления) нескольких документов.

1

Вы можете использовать nano - имеется опция массовой вставки.

+0

Это на самом деле то, что я в конечном итоге использовал, если кто-то еще задается вопросом. Nano предоставляет интуитивно понятный API-интерфейс для API-интерфейса кучного документа. Я останусь другим в качестве ответа, поскольку на самом деле это прямой ответ на мой вопрос, но нано действительно замечательный и легкий. Я рекомендую это. – Chev

Смежные вопросы