1
흘수선 ORM을 사용하여 루프에서 여러 항목을 만들고 싶습니다. 생성 된 각 객체가 배열로 푸시됩니다. 모든 개체가 만들어지면 전체 배열을 반환해야합니다. 나는 나무의 복귀가 만든 잎의 배열과 동일한 배열 구성원을 갖고 싶어Promise : after 루프를 실행하십시오.
share: function(req, res, next) {
var params = {},
id = req.param('id'),
img = {},
targets;
if (!req.param('name')) {
res.status(400);
return res.json('Error.No.Name')
}
var promiseLoop = function(Tree) { // Function called after creating or finding Tree to attach to
var array = [];
if(!req.param('targets')) return Tree; // No targets provided => exit
targets = JSON.parse(req.param('targets'));
_.each(targets, function(target) {
params = {
target : target,
image: Tree.id,
message : req.param('message')
};
Leaf
.create(params)
.then(function(Leaf) {
array.push(Leaf);
});
});
Tree.array = array;
return Tree;
}
if (!id) {
params.owner = req.session.user ;
params.name = req.param('name');
Tree
.create(params)
.then(function(Tree) {
res.status(201); // Status for image creation
return Tree;
})
.then(promiseLoop)
.then(function(data) { res.status(201); res.json(data);})
.catch(function(err) { res.status(400); res.json(err);});
}
}
};
:
여기 내 코드입니다.
그러나 물론
Tree.array = array;
return Tree;
실행 부분 befure 어레이
채워된다. 는 내 나무 개체 내가 응답에서 얻을 수 있습니다 : 나는 모든 객체가 생성 된 후에 만이 부분을 실행해야하기 위해 할 완 무엇{
...,
"array": []
}
?
미리 감사드립니다.
감사합니다. 명명과 관련하여 Tree와 Leaves가 하나의 예입니다. Tree.array가 좋은 값으로 존재하는 경우에도 {}을 사용하여 400 응답을 받았습니다. 나는 내 순서의 끝에서 잡기에 들어간다. – Aston