course
lesson
activity约三项活动创造一节课,约十六节课组成本课程。
我想把活动文件和课文分开。(选择课程和课程)
每个文档都有CRUD操作,在输出课程信息时会出现课程和活动。
在nosql中哪一个更好的参考和包含?
发布于 2019-01-07 13:49:06
我不知道我是否误解了您的问题,但对于为每种类型的记录(活动、课程和课程)创建单独的集合,然后根据需要简单地引用所需课程和活动的id没有问题。这将给您提供一个层次结构的外观。
例如,您可能有如下所示的课程
{
"_id": {
"$oid": "5bbf5d8e1ed05050136206ev"
},
"course_name": "Course 1",
"lessons": [
"_id": {
"$oid": "5bbf5d8e1ed05050136206ew"
},
"_id": {
"$oid": "5bbf5d8e1ed05050136206ex"
},
"_id": {
"$oid": "5bbf5d8e1ed05050136206ey"
},
]
}这是一堂课
{
"_id": {
"$oid": "5bbf5d8e1ed05050136206ev"
},
"lesson_name": "Lesson 1",
"activity": [
"_id": {
"$oid": "5bbf5d8e1ed05050136206ez"
},
"_id": {
"$oid": "5bbf5d8e1ed05050136206ea"
},
"_id": {
"$oid": "5bbf5d8e1ed05050136206eb"
},
]
}如果您知道您希望显示的详细信息类型,并希望将查询最小化,则包含多个集合的一些细节没有问题,例如下面的课程。
{
"_id": {
"$oid": "5bbf5d8e1ed05050136206ev"
},
"course_name": "Course 1",
"lessons": [
{
"_id": {
"$oid": "5bbf5d8e1ed05050136206ew"
},
"lesson_name": "Lesson 1"
},
{
"_id": {
"$oid": "5bbf5d8e1ed05050136206ex"
},
"lesson_name": "Lesson 2"
},
{
"_id": {
"$oid": "5bbf5d8e1ed05050136206ey"
},
"lesson_name": "Lesson 3"
},
]
}希望这能有所帮助。
https://stackoverflow.com/questions/54075282
复制相似问题