gpt4 book ai didi

node.js - Mongoose 双向模型/多对多关系

转载 作者:搜寻专家 更新时间:2023-10-30 21:47:10 28 4
gpt4 key购买 nike

对 mongoose 还很陌生,所以我正在寻找执行此操作的最佳方法。我有两个模型:UsersCompanies。一个用户可以有很多公司,一个公司可以有很多用户。

现在我的公司架构如下所示:

CompanySchema = new Schema
name:
type: String
unique: true
slug:
type: String
users: [
type: Schema.Types.ObjectId
ref: 'User'
]

然后我可以使用 .populate('users') 获取关联用户的列表。没问题。

我想知道的是,让所有 companiesuser 相关联的最有效/最佳方法是什么?我不想像上面那样做,因为列表可能会不同步。有没有一种方法可以在我更新公司用户时用户的公司也会更新?

理想情况下,我可以做 User.find().populate('companies')

最佳答案

我还没有找到让 populate 双向工作的方法。

通常我们最终会做这样的事情

/**
* Load the categories for this account
* @method categories
* @memberof Account
* @instance
* @param {Function} done
*/
AccountSchema.methods.categories = function (done) {
var Category = this.model('Category');

return Category.find({account: this}, done);
};

关于node.js - Mongoose 双向模型/多对多关系,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16111824/

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