【发布时间】:2021-10-09 14:04:43
【问题描述】:
为这个非常基本的问题道歉,但我有点困惑。我在我的 Express + Node 服务器中使用 Mongoose 发布到 Mongo,我刚刚意识到这两个模型/模式与它们发布到的 MongoDB 中的集合的名称不完全相同。一切正常,API 端点发布到正确的集合,但我不知道如何或为什么。 Mongoose 模型/模式与 MongoDB 集合之间有什么联系?
显然,我的 MONGODB_URI 环境变量指向我的数据库,但没有其他对集合的引用,特别是 API 端点应该发布到哪个集合,除了模型之外,它与集合的名称不同。
例如,下面我的 Post 模型确实(通过 api)将数据发送到 posts 集合,但我不知道它是如何知道的正确的集合,这让我很烦。
const PostSchema = new Schema({
...
});
const Post = mongoose.model('Post', PostSchema);
module.exports = Post;
作为测试,我将上面的变量完全重命名为完全不相关的变量
const TrevorSchema = new Schema({
...
});
const Trevor = mongoose.model('Trevor', TrevorSchema);
module.exports = Trevor;
并且创建了一个具有复数名称的新集合,创建了“Trevors”,那么 Mongoose 是否会寻找要映射到的模型的复数名称? 干杯,马特
【问题讨论】:
标签: mongodb mongoose mongoose-schema