私の解析サーバー クラウド コードには、1 つの beforeSave 関数と 1 つの afterSave 関数があります。beforeSave は、「post」テーブルに「誰が保存したか」の検証です。afterSave 関数は、コメントが「comments」テーブルに保存されると、「post」テーブルのオブジェクトを更新します。ただし、「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 {
}
}
});
});