从Parse.com删除特定对象

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了从Parse.com删除特定对象相关的知识,希望对你有一定的参考价值。

在我的云代码中,我想要检索“Messages”类中的第一个对象。然后我想从该对象中获取一些信息,将其发送到另一个类,最后从我最初从中删除它的“Messages”类中删除该对象。下面是我的代码,但它不起作用。我该怎么做这个?

我应该使用与“destroy”方法不同的方法,例如collection.remove吗?

Parse.Cloud.afterSave("sendMessage", function(Parse.Message, response) {
  var body = null;
  var senderName = null;
  var senderId = null;
  var randUsers = [];

  var query = new.Parse.Query(Parse.Message);
  query.find({
    success: function(results){
      body.push(results[1].get("messageBody"));
      senderName.push(results[1].get("senderName"));
      senderId.push(results[1].get("senderId"));
      results[1].destroy({
        success: function(results[1]){
          //the first object in the class "Messages" was deleted
        }, error: function(results[1], error){
          //the first object was not deleted
        }
      });
      response.success(getUsers);
    }, error: funtion(error){
      response.error("Error");
    }

  });
});

避免混淆:“getUsers”是一个任意函数调用。

答案

条目重复的问题;

Query entire class vs first object in the class

但是,如果要删除特定对象,则需要具有唯一标识对象的内容。然后,一种方法是使用Parse对象id从类中删除对象。

要通过云删除对象,需要使用ParseObject的destroy方法。但是如果你有多个对象,那么你可以使用destroyAll方法。下面是关于javascript API的ParseObject删除方法的一个例子;

var yourClass = Parse.Object.extend("YourClass");
var query = new Parse.Query(yourClass);
query.get("yourObjectId", {
  success: function(yourObj) {
    // The object was retrieved successfully.
    yourObj.destroy({});
  },
  error: function(object, error) {
    // The object was not retrieved successfully.
    // error is a Parse.Error with an error code and description.
  }
}); 

希望这会有所帮助,问候。

另一答案

上面的一些变化:

var missingDataQuery = new Parse.Query(missingDataObj)
            missingDataQuery.equalTo('projectId',project);

            var getMissingData = missingDataQuery.find({
                  success: function(yourObj) {
                    console.log('here')
                    yourObj[0].destroy({})
                  },
                  error: function(object, error) {

                  }
            });

在这里,我们得到对象,然后摧毁它。

以上是关于从Parse.com删除特定对象的主要内容,如果未能解决你的问题,请参考以下文章

如何从存储在 Parse 列中的数组中删除对象

Android - 从堆栈中间删除特定片段不起作用

从 Parse.com 查询或保存传入的推送通知

parse.com swift - 在 tableView 单元格中取消固定和删除对象

向知道电话号码的特定设备发送推送通知,parse.com

从 Parse.com (Swift) 检索数据