Android-将Realmlist保存在一个领域对象中



我有一个模型

public class Response extends RealmObject {
        @PrimaryKey
        private String _id;
        private RealmList<TaskResponse> task_responses;
        private AssignmentRecord assignmentRecord;
        private ResponseStatistic responseStats;
}

现在,我正在尝试将task_responses realmlist保存在响应中,但无法成功,以下是相关代码:

    mRealm.beginTransaction();
    response.setTaskResponses(taskResponses);
    response.setAssignmentRecord(assignmentRecord);
    response.setResponseStats(responseStatistic);
    mRealm.commitTransaction();

当我将调试器放在这条线之前

response.setTaskResponses(taskResponses);

TaskRespons的大小为5,但是执行后,它变为空,并且Realm存储一个空列表。

TaskResponse模型:

    public class TaskResponse extends RealmObject {
        @PrimaryKey
        private String _id;
        private String taskId;
        private Boolean answered;
        private String answer;
        private TaskStatistic taskStat;
    }

您可以这样保存,它将起作用

Realm mRealm = Realm.getDefaultInstance();
    mRealm.beginTransaction();
    RealmList<TaskResponse> taskResponseslist = new RealmList();
    taskResponseslist.addAll(taskResponses);
    response.setTaskResponses(taskResponseslist);
    response.setAssignmentRecord(assignmentRecord);
    response.setResponseStats(responseStatistic);
    mRealm.commitTransaction();
    mRealm.close();

最新更新