我正在处理一个我希望保存列表列表的应用程序。我完全保存了所有数据,但是当我获取数据时,这种情况就不存在了。
例如,我想要保存一本有很多章节的章节,章节有很多段落,每个段落都有一组问题,一个问题有一个问题一个答案和四个选项。
我为章节,段落,问题制作了所有表格的模式,并且也很好地将它们联系起来,但是当我保存数据时,它保存在单独的表中但不是相对的。像章节列表只包含章节名称和段落列表只包含段落和类似的问题。
所以我的问题是如何将它们联系起来?例如,我有一个包含章节等的书籍列表。 提前谢谢。
Entity course = schema.addEntity("Course");
course.setTableName("Courses");
course.addIdProperty().primaryKey().autoincrement();
course.addStringProperty("course_name").notNull();
course.addStringProperty("course_id").notNull();
//chapter schema
Entity chapter = schema.addEntity("ChapterList");
chapter.setTableName("Chapters");
chapter.addIdProperty().primaryKey().autoincrement();
chapter.addStringProperty("chapter_name").notNull();
//relation chapter to course
Property chapterDate = chapter.addDateProperty("cahpter_add_date").getProperty();
Property courseId = chapter.addLongProperty("course_id").getProperty();
chapter.addToOne(course,courseId);
//relation course to chapter
ToMany courseToChapter = course.addToMany(chapter, courseId);
courseToChapter.setName("chapter_list");
courseToChapter.orderAsc(chapterDate);
这是表创建和此代码保存数据的代码。
public static void getCourseFromBackend(ParseObject p) {
DaoSession daoSession = WWApplication.getDaoSession();
CourseDao courseDao = daoSession.getCourseDao();
Course course = new Course();
String courseId = p.getString(Constants.ParseKeys.COURSE_ID);
course.setCourse_name(p.getString(Constants.ParseKeys.COURSE_NAME));
course.setCourse_id(courseId);
List<ParseObject> chapterList = p.getList(Constants.ParseKeys.CHAPTER_LIST);
if (chapterList != null) {
for (ParseObject bChapter : chapterList) {
saveChapterFromBackend(bChapter, course, courseId);
}
}
courseDao.insert(course);
}
public static void saveChapterFromBackend(ParseObject object, Course course, String courseId){
DaoSession daoSession = WWApplication.getDaoSession();
ChapterListDao chapterListDao = daoSession.getChapterListDao();
ChapterList chapter = new ChapterList();
String chapName = object.getString(Constants.ParseKeys.CHAPTER_NAME);
chapter.setChapter_name(chapName);
chapter.setCourse(course);
chapter.setCourse_id(course.getId());
chapterListDao.insert(chapter);
}
但是当我检索数据时chapterList
为空。问题出在哪里:保存还是取货?