Android Session 室允许您将多对一相关实体提取到实体中,如下所示:

data class StrokeAndEvents(
    @Embedded
    var stroke: Stroke = Stroke(-1,-1),
    @Relation(
            parentColumn = "id",
            entityColumn = "strokeId",
            entity = Event::class
    )
    var events: List<Event> = listOf()
)

这将返回具有Stroke的对象以及属于Stroke的所有Events的列表 .

我想知道的是,我可以在另一个数据类中使用该对象,而另一个数据类又在另一个数据类中,向上遍历图形,直到最终我有一个包含所有子元素的整个图形的数据类 . 我父项的所有孩子的孩子 .

我试过这个,但它返回一个错误:

data class PageAndStrokes(
    @Embedded
    var page: Page = Page(-1,-1, -1),
    @Relation(
            parentColumn = "id",
            entityColumn = "pageId",
            entity = StrokeAndEvents::class
    )
    var strokes: List<StrokeAndEvents> = listOf()
)

错误是这样的: error: There is a problem with the query: [SQLITE_ERROR] SQL error or missing database (no such table: StrokeAndEvents)

有没有办法让它寻找另一个对象而不是一个表?

提前致谢!

约翰