gpt4 book ai didi

javascript - BookshelfJS belongsToMany 不返回重复项

转载 作者:行者123 更新时间:2023-11-30 00:28:31 24 4
gpt4 key购买 nike

我有两个表具有 belongsToMany 关系。数据透视表还包含一个名为 state 的列,它可以有 3 个不同的值。假设我的表是 Table1Table2

具有不同状态的相同Table1-Table2关系可以有多个条目。

我想获取 Table1 的所有数据透视条目,包括同一 Table2 的任何多个条目。

不幸的是,代码

return this.belongsToMany(Table2, 'pivot_table1_table2').withPivot(['state'])

只返回每个 Table2 的第一个条目。

感谢您的帮助。

最佳答案

这就是书架的工作原理!这是功能的一部分:删除欺骗。我找到了解决方法;从联结表中明确选择一个唯一的属性。如果没有,请为联结表创建一个模型。遗憾的是,那是当时唯一的解决方案。

更新:

也许是这样的。 routes.code 在我的例子中是独一无二的,它是联结表的一部分。如果这不会解决问题,请为联结表创建一个模型并设置好(这可能更受欢迎)。

new Station().where({
id: req.params.id
}).fetch({
withRelated: [{
'routes': function(qb) {
qb.select('routes.id', 'routes.code');
}
}]
}).then(function(result) {
res.json(result.toJSON());
});

关于javascript - BookshelfJS belongsToMany 不返回重复项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30536411/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com