我是mongodb的初学者,我希望收到您关于采用最佳实践的建议。
我正在创建一个简单的博客来开始,我的猫鼬模式如下
博客
const Blog = new Schema({
title : String,
description : String,
pictures: Schema.Types.Mixed
});
图片
const picture = new Schema({
images : Array
});
图像架构将仅包含url,图像将存储在cloudinary中。
我分成两个模式,以便不重复逻辑,因为我还可以添加一个带有个人资料照片的用户图(图片模式)
我主要关心的是我将如何对用户和博客架构执行粗体操作,因为它们具有子文档图片,该图片是字符串,但必须使用multer,cloudinary和fs来实现上载。我必须发出两个请求才能分别创建文档和其子文档吗?
您的帮助对我来说将是宝贵的
答案 0 :(得分:1)
您不应创建这样的架构。与Blog相关的所有内容都应在其架构中,因此,如果图像是Blog的一部分,则只需将其添加到Blog的架构中即可:
const Blog = new Schema({
title : String,
description : String,
images: Array
});
然后,此图像数组可以具有该Blog的图片的URL。对于用户部分,您应该为具有用户名,密码等和该用户个人资料图片的用户创建另一个架构。这样,事情变得更有条理,可读性更强,没有重复的逻辑并不意味着您应该将其模块化,以免混淆。保持简单博客架构中与Blog相关的所有内容User架构中与Users有关的所有内容,依此类推。