Menyimpan daftar friend_ids
di pengguna, itulah yang akan saya rekomendasikan. Beberapa alasan,
1.Anda meminta pengguna, dan Anda memiliki daftar semua teman yang tersedia di muka.
2.Permintaan (tertunda, diterima) dapat ditangani juga, dengan melihat bahwa masing-masing id harus ada di daftar teman kedua pengguna. Jadi, saya bisa mendapatkan daftar teman yang sebenarnya dan diterima dengan menanyakan
my_id, my_friend_ids = user._id, user.friend_ids
my_friends = db.users.find({'_id':{'$in': my_friend_ids}, 'friend_ids': my_id})
Ya, saat menghapus pertemanan, Anda harus $pull
dari daftar teman kedua pengguna, tetapi frekuensinya akan jauh lebih sedikit. Tetapi Anda lebih sedikit meminta untuk mendapatkan daftar teman, yang akan sering digunakan.