데이터베이스에 삽입하기 전에 데이터의 유효성을 검사하려고합니다. Feathersjs 방식은 후크를 사용하는 것입니다. 권한 그룹을 삽입하기 전에 사용자 게시물에서 제공하는 데이터의 무결성을 고려해야합니다. 내 솔루션은 사용자가 제공 한 데이터와 관련된 모든 사용 권한을 찾는 것입니다. 리스트의 길이를 비교함으로써 데이터가 옳은지를 증명할 수 있습니다. 후크의 코드는 울부 짖는 소리 게시 : feathersjs 훅 내부의 약속을 어떻게 처리할까요?
const permissionModel = require('./../../models/user-group.model');
module.exports = function (options = {}) {
return function usergroupBefore(hook) {
function fnCreateGroup(data, params) {
let inIds = [];
// the code in this block is for populating the inIds array
if (inIds.length === 0) {
throw Error('You must provide the permission List');
}
//now the use of a sequalize promise for searching a list of
// objects associated to the above list
permissionModel(hook.app).findAll({
where: {
id: {
$in: inIds
}
}
}).then(function (plist) {
if (plist.length !== inIds.length) {
throw Error('You must provide the permission List');
} else {
hook.data.inIds = inIds;
return Promise.resolve(hook);
}
}, function (err) {
throw err;
});
}
return fnCreateGroup(hook.data);
};
};
내가
inIds
배열을 채우기 위해 다른 매개 변수의 일부 정보를 처리하는 선 댓글을 달았습니다. 또한 배열에 저장된 정보와 관련된 객체에 대해 연속 검색을 사용했습니다.
then
블록 내의이 블록은 백그라운드에서 실행됩니다. feathersjs 콘솔에서 데이터가 데이터베이스에 삽입하였으나 결과
feathersjs 훅 내에서 실행 된 약속에서 데이터를 반환하려면 어떻게해야합니까?
노드 6을 노드 8 설치로 업데이트했습니다. 감사 –