以下の parse.com でクラウド コードを作成しようとしています。ユーザー、ブランド、キャンペーンの 3 つのクラスがあります。LastLoginTime を User クラスに保持します。Brand クラスには、Campaigns クラスに対する Campaigns という名前のリレーションがあります。ユーザーから LastLoginTime を取得し、LastLoginTime より後の updateAt 日付を持つすべてのキャンペーンを取得する必要があります。最後に、これらのキャンペーンに関連するブランドを取得する必要があります。これまでのところ、LastLoginTime を取得する関数しか作成できませんでした。matchesKeyInQuery または連鎖関数を使用しようとしましたが、解決できませんでした。ここまでのコードです。
Parse.Cloud.define("getLoginTime",function(request, response){
var User = Parse.Object.extend("User");
var query = new Parse.Query(User);
var lastlogin;
query.equalTo("objectId", request.params.objectId);
query.first({
success: function(object) {
// The object was retrieved successfully.
lastlogin = object.get("LastLoginTime");
response.success(lastlogin); // works well if left alone :)
console.log("entered time");
console.log(lastlogin);
},
error: function(object, error) {
// The object was not retrieved successfully.
// error is a Parse.Error with an error code and description.
}
});
});
上記は機能しますが、以下は機能しません。
Parse.Cloud.define("getNewCampaigns", function (request, response){
var Campaign = Parse.Object.extend("Campaigns");
var cquery = new Parse.Query(Campaign);
var lastlogin;
lastlogin = parse.Cloud.run("getloginTime",request.params.objectId);
cquery.greaterThan("updatedAt",lastlogin);
cquery.find({
success: function(results) {
// results is an array of Parse.Object.
response.success(results);
},
error: function(error) {
// error is an instance of Parse.Error.
}
});
});
モデルを変更する方法はありますか、または必要がありますか。