gpt4 book ai didi

mongodb - Loopback mongodb-connector principalId 存储为字符串

转载 作者:可可西里 更新时间:2023-11-01 09:55:38 24 4
gpt4 key购买 nike

我将 Loopback 与 mongodb 连接器一起使用。当执行查询以查找分配给用户的所有角色时,响应不返回任何内容。

// Find all users
$scope.displayUsers = [];
$scope.loading = true;
$scope.users = User.find({
include: ['roles']
}, function() {
$scope.displayUsers.concat($scope.users);
$scope.loading = false;
});

我已将其缩小到 principalId 作为字符串存储在 Rolemapping 模型中,而 userId 是 ObjectId 类型。当我在我的数据库中手动更改 principalId 类型 ObjectId 时,查询似乎有效。

我在这里发现了类似的问题:https://github.com/strongloop/loopback/issues/676

我已尝试遵循这些建议,但它似乎并没有解决我的问题。有没有人找到类似问题的解决方案?

最佳答案

此问题已在 issue #1441 中报告.我找到了解决方法:

RoleMapping.belongsTo(User);
User.hasMany(RoleMapping, {foreignKey: 'principalId'});
Role.hasMany(User, {through: RoleMapping, foreignKey: 'roleId'});

var ObjectID = RoleMapping.getDataSource().connector.getDefaultIdType();
RoleMapping.defineProperty('principalId', {
type: ObjectID,
});

关于mongodb - Loopback mongodb-connector principalId 存储为字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28762988/

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