Tôi đang sử dụng Node.js và Mongoose để lưu trữ một số dữ liệu. Sau khi cập nhật, tôi có cấu trúc sau:Mongoose, Xóa Thuộc tính khỏi Mẫu
{ created: Mon, 30 Jan 2012 19:25:57 GMT,
_id: 4f21a6028132fba40f0000b7,
features:
{ imdb_id: 'tt0822975',
released: '2007-03-24',
tvdb_id: 103191,
type: 'series',
names: [ 'DinoSapien' ],
pictures: [],
cast: [],
genres: [ 'Action and Adventure', 'Children' ] },
type: 1 }
Tôi cần xóa ví dụ: cast
và pictures
trường trên tài liệu này. Tuy nhiên, tôi đã áp dụng một giải pháp để xóa các mảng trống khỏi cơ sở dữ liệu nhưng không hoạt động:
instance = (an instance from calling findOne on my model)
cast = (an array)
if (cast && cast.length > 0){
instance.features.cast = cast;
} else {
delete instance.features.cast;
}
console.log(cast); // null
console.log(instance), // cast is not removed!
Có thể loại bỏ các mảng trống hoặc các giá trị không mong muốn khỏi mô hình khi lưu vào db không?
Dường như bạn không thể làm điều đó với các trường loại ObjectId, nhưng cách suy nghĩ tốt đẹp! :) – panosru