我正在用猫鼬建立这种模式,公司在公司中有一个名为“地址”的字段。
我可以这样处理此字段:
address: {
type: Map,
},
field2: Number,
但是我想验证这张地图,所以我创建了一个验证器道具:
address: {
type: Map,
validate: {
validator: (map) => {
const title = map.get('city');
const content = map.get('street');
const likes = map.get('number');
if (
title && typeof city === 'string' &&
content && typeof street === 'string' &&
likes && typeof number === 'number'
) {
return true;
} else {
return false;
}
},
message: 'Address map does not contain necessary fields',
},
},
这是在集合文档中处理此类对象的最佳方法吗?还是我应该使用另一个模式(最终会导致每个加法器成为具有自己的ID等的子文档)来建模地址对象?哪个是更好的性能明智的选择?哪种查询更好?
提前谢谢!