2017-01-28 3 views
0

Я разрабатываю бэкэнд с использованием node.js. Я использую структуру sails.js. Паруса используют адаптер для подключения к Интернету для работы с базами данных. В парусах, если у нас есть какая-либо модель, то мы можем непосредственно поток записи, как это:поток записей, возвращаемых методом запроса ватерлинии (orm для узла js)

Model.stream().pipe(res); 

Но теперь у меня есть таблица в БДЕ, которая не имеет какую-либо модель, соответствующую эту таблицу (в основном ИТС вид). Таким образом, для получения записей из таблицы, я непосредственно использовать необработанный запрос, как это:

Model.query('select * from transactions',(err, results) => { 
//Now I want to stream those results 
results.stream().pipe(res); 
}); 

Я должен транслировать эти записи в поток ответа. Вышеуказанный метод дает мне ошибку (results.stream is not a function). Что еще я могу пытаться передать эти результаты

+0

Я не думаю, что вы можете передавать это потому, что ватерлиния возвращает исходные результаты –

+0

Но я должен поток тех, результатов, невозможно сразу отправить все записи –

ответ

0

Вы можете использовать это https://www.npmjs.com/package/streammagic для преобразования массива в поток

var myArray = ['hello', 'world']; 
var myStream = myArray.toStream(); 

myStream.on('data', function(data){ 
// The data event will fire twice. Data will contain 'hello' the first time, 'world' the second. 
});