为了账号安全,请及时绑定邮箱和手机立即绑定

mongodb 一对多如何更好设计

/ 猿问

mongodb 一对多如何更好设计

翻过高山走不出你 2018-08-01 09:21:51

拟设计的业务结构如下:

var mySchema = new Schema({
  projectname:  String,
  author: String,
  body:   String,
  task: {
    taskname: String,
    user: String,
    picture: {
    url1,
    url2,
    url3,    ...
    },
  }
});

用文字叙述业务结构就是,每个project包含n个task,每个task下又包含n个图片。
日常操作是
1.新建project => 新建task =>上传n个图。
2.对project task等进行update操作。

请问该我这样的数据库设计合理吗。是否有更优的办法。使用的是express开发。


查看完整描述

1 回答

?
慕标5265247

完全可以!某些业务场景特别适合这种嵌套的子集合设计。要用到数据project数据的时候 ,需要一并用上task。 这种只需要查询一张表,效率很高。 而且mongo对子集合的支持也比较好。

查看完整回答
反对 回复 2018-08-02

添加回答

回复

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信