评级系统与Parse

Rating system with Parse

本文关键字:Parse 系统      更新时间:2023-09-26

我真的需要BaaS解析的帮助。我有一个类"人",有这样的字段:姓名,积分,评级等。请帮我解决这个问题——我需要在"rating"字段中设置值"1"为得分最多的用户,设置值"2"为得分较少的用户,以此类推。我该怎么做呢?我知道如何为一个人设置"1",他有最大的点数:

query.descending("points");
query.first({
       success: function(result){
       // ...
       },
       error: function(){
       },
 });

但是如何为每个人做呢?

我解决了这个问题。也许它会帮助某人

Parse.Cloud.job("Rating", function(request, status) {
    Parse.Cloud.useMasterKey();
        var usersToSave= [];
        var query = new Parse.Query("Person");
        query.descending("points");
        query.find().then(function(results) {
            for(var i = 0; i < results.length; i++)
            {
                var user = results[i];
                user.set("rating", i+1);
                usersToSave.push(user);
            }
        }).then(function() {
          Parse.Object.saveAll(usersToSave, {
            success: function(list) {
                if (status) {
                    status.success("success");
                };
            }, error: function(model, error) {
                if (status) {
                    status.error(error);
                }
            }
        });
    });
});