В моем облачном коде сервера синтаксического анализа у меня есть одна функция beforeSave и одна функция afterSave. BeforeSave — это проверка того, «какой пользователь делает сохранение» в таблицу «post». Функция afterSave обновляет объект в таблице «post», когда комментарий сохраняется в таблице «comments». Однако "result[0].save(null, {useMasterKey: true});" часть снова запускает функцию beforeSave, и, поскольку облако выполняет сохранение, а пользователя нет, из-за проверки пользователя в части «beforeSave» сохранение не может быть выполнено. Это немного сложно, надеюсь, я смог хорошо объяснить, есть ли способ обойти метод beforeSave, когда сохранение выполняется из облака?
Parse.Cloud.beforeSave('post', function (req, res) {
});
Parse.Cloud.afterSave('comment', function(req) {
var post = Parse.Object.extend('post');
var query = new Parse.Query(post);
query.equalTo('userid', req.user.id);
query.find({
success: function(result) {
if ( result.length > 0 ) {
result[0].set('commented', 'yes');
result[0].save(null, { useMasterKey: true });
}
else {
}
}
});
});