关于Parse中修改其他用户信息

最近在做毕业设计,比较少的新知识补充,所以很久没更新过博客,其实归根到底还是太懒了,要坚持啊。


好,开始说正事,若你在使用Parse,并且遇到下面的报错信息,请继续

关键句:User cannot be saved unless they have been authenticated via logIn or signUp


首先说明一下:Pares是不允许修改其它用户的信息的,所以当试图修改其他用户信息的时候,就会出现上面的报错。

那我有这个需要呢?怎么办?

其实有两个解决的办法:1、用户信息存在另一个表,但是这样会使得创建、查询、删除很麻烦

    2、使用Parse的CloudCode


我就是使用CloudCode解决这个问题的。

CloudCode使用的是JS代码,这里我就不详细说使用方法了,贴下一段简单的代码作为引导:

云代码:

Parse.Cloud.define("editUser", function(request, response) {
    var userId = request.params.userId,
        newColText = request.params.newColText;

    var User = Parse.Object.extend('_User'),
        user = new User({ objectId: userId });

    user.set("new_col", newColText);

    Parse.Cloud.useMasterKey();
    user.save().then(function(user) {
        response.success(user);
    }, function(error) {
        response.error(error)
    });
});


本地调用:

[PFCloud callFunction:@"editUser" withParameters:@{
    @"userId": @"someuseridhere",
    @"newColText": @"new text!"
}];

相信都能明白了吧。
最后,写下本文仅仅是作为自己的笔记,放上来只是希望能帮到后来者。虽然对于一些大牛(反正我不是)来说,这很easy,但新手或许需要。我自己在学习的过程中就是经常碰到一些问题,身边没人问,网上找不到,最后自己花了好长时间才解决,体会到这点,因此,碰到一些网上难找的问题,我都会把它记下来,作为笔记也希望能帮到后来者。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值