数据未保存到 Parse Cloud Android

Posted

技术标签:

【中文标题】数据未保存到 Parse Cloud Android【英文标题】:Data not saving to Parse Cloud Android 【发布时间】:2016-01-11 21:50:01 【问题描述】:

我一直在尝试将 Parse 添加到我的 android 应用程序中。一切都很好设置。将某些数据添加到云和用户等。我正在尝试从发送参数的类 ArrayList 添加数据。数组列表中的类集合很好,称为任务。它有正确的信息。我设置了一个扩展 ParseObject 的新类,如下所示,它应该填写 Tasks 类以将数据输入到 Parse Cloud。

package beans;

import com.parse.ParseClassName;
import com.parse.ParseObject;
import com.parse.ParseUser;

import java.util.ArrayList;

/**
* Created by KieranMcc on 11/01/2016.
*/
@ParseClassName("Tasks")
public class ParseTasks extends ParseObject 
private int id; //_id
private int task_id; //task_id
private String task; //task_name
private boolean completed; //_isCompleted

public ParseTasks()
    super();


public ParseTasks(Tasks tasks)
    super();



public int getId() 
    return getInt("_id");


public void setId(int id) 
    put("_id", id);


public int getTask_id() 
    return getInt("task_id");


public void setTask_id(int task_id) 
    put("task_id", task_id);


public String getTask() 
    return getString("task_name");


public void setTask(String task) 
    put("task_name", task);


public boolean isCompleted() 
    return getBoolean("_isCompleted");


public void setCompleted(boolean completed) 
    put("_isCompleted", completed);


public void setUser(ParseUser user)
    put("tasks_user", user);


public ParseUser getUser()
    return getParseUser("task_user");


我想要做的是循环遍历带有类任务集合的数组列表。数组列表

这是我的代码,但它没有保存到 Parse

protected void uploadToCloud(Task task)

    ParseTask taskParse = new ParseTask();
    taskParse.setUser(ParseUser.getCurrentUser());
    taskParse.setId(task.getId());
    taskParse.setName(task.getName());
    taskParse.setNumOfTasks(task.getNumOfTasks());
    taskParse.setNumOfTasksCompleted(task.getNumOfTasksCompleted());

    taskParse.saveInBackground();

    // add task to cloud
    // loop through tasks and add one by one to cloud
    ParseTasks tasksParse= new ParseTasks();
    for(int i = 0; i < task.getTasks().size(); i++)
        tasksParse.setId(task.getTasks().get(i).getId());
        tasksParse.setTask(task.getTasks().get(i).getTask());
        tasksParse.setTask_id(task.getTasks().get(i).getTaskId());
        tasksParse.setCompleted(false);
        tasksParse.setUser(ParseUser.getCurrentUser());
        tasksParse.saveInBackground();
    


不太确定我做错了什么,因为我没有收到错误或任何东西。并且 ParseTask 可以正常运行吗?有人可以告诉我为什么它不会通过请。非常感谢您阅读这篇长文并提供任何帮助:)

【问题讨论】:

Kmc 你想将多个数据存储到解析类中吗?并且还可以回调后台线程中的保存以了解您遇到的错误。 嘿哈迪克!我最终设法让它工作:)!不想做的只是将课程列表上传到云端。需要以某种方式使用方法 saveAllInBackground 并且它们都保存到它:)。感谢您检查:) 【参考方案1】:

我设法找出问题所在。所以我想我会为将来遇到问题的人分享我学到的东西:)

使用 parse 您应该自己在一个系列中添加一个以上的数据。就像我在顶部尝试过的一样!使用方法 saveAllInBackground() 是您应该使用的。

你需要的是一个 ParseObjects 列表,然后像这样将它们传递给 saveAllInBackground(list, callbackmethod) 。然后我添加了一个带参数的构造函数,并通过将构造函数用作新实例将其保存到云中。

希望以后能对一些人有所帮助:)

【讨论】:

以上是关于数据未保存到 Parse Cloud Android的主要内容,如果未能解决你的问题,请参考以下文章

向用户添加数据,然后使用 Parse Cloud Code 保存它们

在 Parse Cloud Code 中保存“没有数据的对象”指针

Parse Cloud 函数失败并出现错误 141

使用 Parse Cloud 代码将文件保存在 Heroku 文件系统中?

无法创建指向未保存 ParseObject 的指针

Parse.Cloud.httpRequest 使用 POST 方法返回“未定义”而不是响应