私はユーザーの言語をから取得しようとしています。ユーザー Parse Cloudにあります。 langはユーザークラスの列の1つです。私はlangを取得します。私の全体のクラウドコードは(それが動作しませんでした)次のとおりです。Parse Cloud - objectIdでユーザー情報を取得
Parse.Cloud.beforeSave('Order', function(request, response) {
var orderState = request.object.get('orderState');
var subtitleMessage = '';
var userLang = '';
var currentUser = request.object.get('user');
var userQuery = new Parse.Query(Parse.User);
userQuery.equalTo('objectId', currentUser.id);
.find()
.then((result)=>{
userLang = result.get('lang');
})
if (orderState === undefined || ['nonApproved', 'approved', 'delivered', 'canceled'].indexOf(orderState) < 0) {
response.error("OrderState is null or not one the ['nonApproved', 'approved', 'delivered', 'canceled']!");
} else {
var query = new Parse.Query(Parse.Installation);
query.include('user');
query.equalTo('user', request.object.get('user'));
Parse.Push.send(
{
where: query,
data: {
title: "MyTitle",
alert: subtitleMessage
}
},
{
success: function() {
},
error: function(error) {
response.error(error)
},
useMasterKey: true
}
);
response.success();
}
});
「それはうまくいかない」以外の詳細を提供できますか?たとえば、ログに記録されたエラーや予期しない動作はありましたか?また、promiseハンドラに 'userLang'を割り当てて、どこにも使用していないようです。 – JeremyPlease
エラーはありませんでした。 'userLang'を記録すると' undefined 'になります。私はすべてのユーザーの優先言語に応じてプッシュ通知をユーザーに送信したいと考えています。だから私はParseから 'lang'を手に入れたいと思っています。 –