首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在MongoDB中建立多对多关系的最佳方法

在MongoDB中建立多对多关系的最佳方法
EN

Stack Overflow用户
提问于 2021-06-10 12:30:51
回答 1查看 28关注 0票数 0

我有两个用于MongoDB的模型

音乐家和专辑

一张音乐专辑可以由一个或多个音乐家演唱/演奏。

一位音乐家可以为多张音乐专辑作贡献(唱歌或演奏)。

音乐专辑模型:

代码语言:javascript
运行
复制
  albumName: {
    type: String
  },
  releaseDate: {
    type: Date
  },
  genre: {
    type: String
  },
  price: {
    type: Number
  },
  description: {
    type: String
  },
  songs: {
    type: Array
  }

音乐家模型:

代码语言:javascript
运行
复制
  artistName: {
    type: String
  },
  artist_type: {
    type: String
  }

你能推荐一种在MongoDB中实现多对多关系的方法吗?

谢谢

EN

回答 1

Stack Overflow用户

发布于 2021-06-10 15:16:19

由于MongoDB是一个NoSql数据库,因此很难期望它具有对象关系映射功能。

不过,您可以使用不同的方式来实现它。

您可以将musician模型的对象数组保存到音乐专辑模型中,如以下模式所示。

代码语言:javascript
运行
复制
  albumName: {
    type: String
  },
  releaseDate: {
    type: Date
  },
  genre: {
    type: String
  },
  price: {
    type: Number
  },
  description: {
    type: String
  },
  songs: {
    type: Array
  },
  musician : {
    type: Array
  }

其中音乐家字段将如下所示:

代码语言:javascript
运行
复制
[
 {
  "artistName" : "Swift taylor",
  "artist_type" : "english"
 },
 {
  "artistName" : "Justin Bieber",
  "artist_type" : "english"
 }
]
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67914760

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档