Saya tidak bisa mengatakan apa yang salah dengan contoh Anda, selain itu Anda melakukannya dengan cara yang salah. MongoDB menyediakan cara bawaan yang lebih mudah untuk menghapus item dari array baik dengan menentukan persisnya, atau melalui kueri:
Lihatlah $pull
operator
.
Dalam luwak salah satu cara untuk melakukan ini adalah:
Article.findByIdAndUpdate(this._id, {
$pull: {
likes: {user: user._id}
}
}, cb);