使用书架的withRelated()

时间:2019-04-25 00:44:36

标签: node.js express bookshelf.js

我有一个User可以belongToMany Group,一个Group可以belongToMany ReviewQueueStatus,其中hasMany {{ 1}},依次为ReviewQueues belongsToMany

我正在尝试通过获取用户的深层嵌套关系

SavedSearches

目前,这只深入了一层。 (即:我可以获得用户所属的所有组,并且嵌套在每个组中的是所有 return app.models.User.forge({ id: req.params.id }) .fetch( { withRelated: ["groups.review_queue_statuses.review_queues.saved_searches"]}) 的列表)。 ReviewQueueStatus对象具有ReviewQueueStatus属性,但是它是一个空列表。但是,在查看数据库行条目时不应该如此。

在发布所有代码和关联的DB模型之前,是否有可能像这样深入嵌套,还是书架只能深入一层?我一直无法在书架文档(https://bookshelfjs.org/api.html)中找到任何有关检索深层嵌套关系的内容。

感谢您的光临。

1 个答案:

答案 0 :(得分:0)

是的,由于模型正确映射,所以书架可以达到任何关系级别。正确地说一句话意味着您需要设置指向正确外键的正确关联(一对一,一对多等),并在withRelated选项中引用相同的名称{1}}或fetch()

请发布所有模型,以便我们进行检查。