我是MongoDB JSON文件开发的新手。我正在寻找包含另一个JSON文件生成参考站点的JSON文件。下面是我的原始JSON文件。
[ {
"Post" : {
"id" : 1,
"title" : "Title 1",
"created_date" : "2018-12-01 11:10:13.247",
"body" : " 국회는 헌법 또는 ....",
"user" : {
"username" : "joseph",
"password" : "password"
},
"tags" : {
"tag" : [
{
"id" : 1,
"created_Date" : "2018-12-02 11:10:13.247",
"body" : "첫 글의 댓글입니다.",
"user" : {
"username" : "jina",
"password" : "password"
}
},{
"id" : 2,
"created_Date" : "2018-12-03 11:10:13.247",
"body" : "첫 글의 두번째 댓글입니다.",
"user" : {
"username" : "julian",
"password" : "password"
} } ] } }
}
,
{
"post" : {
"id" : 2,
"title" : "Title 2",
"created_date" : "2018-12-03 11:10:13.247",
"body" : "제안된 헌법개정안은 대통령이 ....",
"user" : {
"username" : "joseph",
"password" : "password"
},
"tags" : {
"tag" : [
{
"id" : 1,
"created_Date" : "2018-12-02 11:10:13.247",
"body" : "댓글 입니다.",
"user" : {
"username" : "julian",
"password" : "password"
} } ] } }
}]
如您所见,在每个后置文档上都重复了“ user”和“ tag”元素。因此,我尝试将这些元素划分为类似模块的文件,并可以在Post JSON文件中引用这些元素。但是我不知道如何将这些JSON数据分为另一个JSON文件。
"user" : {
"username" : "joseph",
"password" : "password"
}
[ {
"Post" : {
"id" : 1,
"title" : "Title 1",
"created_date" : "2018-12-01 11:10:13.247",
"body" : " 국회는 헌법 또는 ....",
"$ref" : user,
"$ref" : tag
我希望在“发布” JSON上重用“用户” JSON元素。
答案 0 :(得分:1)
我想这不是一个JSON inside JSON
问题,更多的是关于mongoDB中的数据建模。您正在应用程序中使用嵌入式数据模型,并且需要使用references
遵循归一化数据模型,以避免重复。
MongoDB在designing the data models上有不错的文档,请看。
答案 1 :(得分:0)
据我了解,您希望将可重复部分与主集合(表)分开。要实现您的想法,您可以按照以下步骤操作。
更多信息: https://docs.mongodb.com/manual/reference/operator/aggregation/lookup/