2015-05-15 2 views
6

Мы используем sequelize на узле js У меня есть ресурс. Файл имеет атрибут UserId. Нужна: скопируйте те же файлы (по файлам) пользователю. Если использовать SQL, то необходимо сделать следующее:Как вставить из select in sequelize

INSERT INTO files (name, link, userId) SELECT name, link, 5 FROM files WHERE id in (1,2,3,4,10) 

Но как же это на sequelize я нет никаких идей ... Только пользовательских запросов SQL.

+0

Вы нашли решение этой проблемы? – Clarkie

ответ

1

попробовать что-то вроде этого:

File.findAll({ 
    where: {id: {$in: [1,2,3,4,10]}} 
}).then(function(filesSeq)){ 
    //make file objects with UserId=5 
    var files = filesSeq.map(function(fileSeq){ 
    var file = fileSeq.toJSON(); 
    file['UserId'] = 5; 
    return file; 
    }); 
    return File.bulkCreate(files) 
}).then(function(files){ 
    //do something with created files 
}); 
Смежные вопросы