【发布时间】:2018-10-18 23:43:42
【问题描述】:
我正在编写一个每天收集用户体重信息的应用。我是 NoSQL 数据库世界的新手。所以我想在一开始就选择正确的架构。
展示案例是这样的: 用户只说一次关键数据,例如身高或年龄,然后用户可以测量其体重
现在我是这样写的:
var userSchema = new Schema({
randomId: {type: Number, required: false, unique: true },
name: String,
userId: {type: String, required: true},
hight: Number,
gender: String,
waist: Number,
age: Number,
updated: { type: Date, default: Date.now }
});
如何存储每天的体重信息?
我应该用重量值和日期创建一个新的重量模型吗?
var weightSchema = new Schema({
name: String,
userId: {type: String, required: true},
weightValue:{
value: Number,
updated: { type: Date, default: Date.now }
}
});
或者我应该在每次记录 userSchema 时更新吗?
【问题讨论】:
-
唯一“正确”的方式完全取决于您打算如何使用数据。嵌入数据将加载得更快,因为它已经在文档中,但通常需要引用数据,因为要嵌入的“条目”数量太大而无法接受。如果您正在寻找“最佳实践”橡皮图章,那么真的没有。做最适合您自己的应用程序使用模式的事情。
标签: mongodb mongoose mongoose-schema