Я использую облачный код Parse для обновления некоторых счетчиков пользователя, когда after_delete вызывается для определенных классов. У пользователя есть счетчики подписок, подписчиков и подписок, которые увеличиваются в before_save для подписок и подписок и уменьшаются в before_delete для тех же классов.
Проблема, с которой я сталкиваюсь, заключается в том, что пользователь удаляется. Функция after_delete уничтожает все связанные подписки/подписки, но это запускает обновление для (удаленного) пользователя через before_delete для подписок/подписок. Это всегда приводит к ошибке before_delete.
Возможно, я концептуально запутался в том, как лучше всего это сделать, но я не могу понять, как правильно настроить следующий код перед before_delete:
var fromUserPointer = follow.get("fromUser");
var toUserPointer = follow.get("toUser");
fromUserPointer.fetch().then( function(fromUser){
// update following counter
// if from user is already deleted, none of the rest of the promise chain is executed
}.then( function (fromUser){
return toUserPointer.fetch();
}.then( function(toUser){
// update followers count
}
Есть ли способ определить, указывают ли fromUserPointer и toUserPointer на действительный объект, за исключением фактического выполнения выборки?