我正在尝试为用户创建一个架构来存储自己喜欢的鞋子。现在,我有以下架构:
local: {
email : String,
password : String,
}
如何添加一系列鞋子,以便当用户点击按钮时,数据库会将鞋子的品牌和尺寸添加到User对象?如下所示:
favorite_shoes:{品牌:xxxx尺寸:xxxx,品牌:xxxxx尺寸:xxxxxx}
为每个用户。我该怎么做/架构将如何?
答案 0 :(得分:0)
您的架构如下所示:
{
usernam: String,
email: String,
password : String,
favorite_shoes: [ { brand: String, size: Int}, {brand: String, size: Int} ]
}
您不必事先创建favorite_shoes
字段。它将在您第一次设置其值时创建。
如果您想避免在列表中重复使用鞋子,请使用$addToSet
:
db.users.update({usernam: "username"}, {$addToSet: {favorite_shoes: { brand: "Adidas", size: 12 } }});