0
我本來有兩個模式:貓鼬找不到更改屬性類型之後的任何元素
var UserSchema = new Schema({
first: String,
last: String
});
var SaleSchema = new Schema({
createdAt: Date,
registeredBy: { type: Schema.ObjectId, ref: 'User' }
});
但我想修改自己的SaleSchema保存,而不是ID的用戶名,所以我改變了它:
var SaleSchema = new Schema({
createdAt: Date,
registeredBy: String
});
接下來,我想編輯所有的銷售文件和更換registeredBy的用戶ID的用戶的全名,但我似乎無法能夠舊ID的執行find
查詢。
長話短說,這個查詢返回貓鼬沒有比賽,但它完美使用蒙戈控制檯:
貓鼬
Sale.find({ registeredBy: '57ea0cbb47431f0b43b87d42' })
.then(results => res.json(results))
.catch(err => res.status(500).json(err));
// result: []
MongoDB的控制檯
db.sales.find({ registeredBy: '57ea0cbb47431f0b43b87d42' })
// result: 8 elements
後,我修改我的schema的屬性返回到ObjectId,mongoose查詢再次工作。由於我需要遷移到新的數據類型,我希望能夠查詢和存儲這兩種類型的值。這可能嗎?