如何在Parse的安装类中应用更新删除查询?

时间:2016-02-01 07:36:10

标签: ios objective-c parse-platform pfinstallation

我正在开发使用Parse的一对一推送通知的应用程序。

我使用安装类,但我无法在安装类中应用更新或删除查询

enter image description here

在上图中,有多个相同的USERID条目。

我想检查USERID是否已经在安装类中,只需更新该列。

下面是我的代码,我获取安装类的详细信息并使用USERID查询。

  PFInstallation *installation = [PFInstallation currentInstallation];

        NSLog(@"%@",installation);

        PFQuery *query = [PFInstallation query ];

        [query whereKey:@"USERID" equalTo:getUserId];

但不知道我必须使用哪个代码进行更新查询。

任何帮助都将不胜感激。

2 个答案:

答案 0 :(得分:0)

首先,检查用户是否存在: -

 BOOL isFound=FALSE;
PFQuery *query = [PFInstallation query ];
[query whereKey:@"USERID" equalTo:getUserId]; 
NSError *error=nil;
 NSArray *arrayTest=[query findObjects:&error];
 if(!error)
       {
            if([arrayTest count]>0)
            {
               isFound=TRUE;
            }
        }

其次,如果用户找到,则更新安装对象: -

if(isFound)
{
     PFInstallation *installation = [PFInstallation currentInstallation];
        [installation setObject:@"whatever you want to set" forKey:@"ColumnName"];
        [installation saveInBackground]; 
}

答案 1 :(得分:-1)

尝试此操作以更新解析中的profileName

  let query = PFQuery(className:"User")
    query.getObjectInBackgroundWithId(myOutput as! String) {
        (currUser: PFObject?, error: NSError?) -> Void in
        if error != nil {
            print(error)
        } else if let currUser = currUser {
              currUser["profileName"] = profilename
             currUser.saveInBackground()
       }

    }