
deleteProductAsync: הפונקציה מקבלת _id ומחזירה Promise, באותה תבנית של הפונקציות הקודמות.deleteOne: ניגשים ל-collection של המוצרים ומוחקים את המסמך שה-_id שלו שווה ל-mongodb.ObjectID(_id).info. במקרה של שגיאה קוראים ל-reject, אחרת ל-resolve בלי להחזיר ערך. את info השאירו אף שלא משתמשים בו, כדי שיהיה ברור שהוא קיים.הטקסט המלא של הדקות הראשונות בהרצאה «מחיקה של מוצר ב-MongoDB» בקורס הווידאו של PracticU – כתוביות בעברית עם זמן התחלה לכל פסקה. כך תוכלו לקרוא ולחפש את הנושאים לפני שמתחילים ללמוד.
אנחנו רוצים כעת להתעסק עם מחיקה. בואו ניגש לפונקציה delete product async, ניפטר רגע מה-async הזאת, ויש לנו כמובן ID שאנחנו רוצים, underline ID, ניפטר מהתוכן של הפונקציה, ונעשה איזה קופי אולי, שנחסוך קצת בכתיבה.
בואו ניקח סתם את זאת, get one, נעתיק כי אנחנו צריכים את התבנית הזאת של ה-promise, נדביק פה, ויש לנו return new promise, resolve, reject, יש לנו פה את db-collection-products, במקום find one, delete one.
אנחנו אומרים לו לחפש בדיוק את זה שה-id שווה, mongo db-object-id, underline-id, ובמידה והצלחנו, אז הוא נותן לנו error ו-info, הוא לא ייתן לנו את האובייקט עצמו.
יש לנו כאן אם יש שגיאה ריג'קט וריזולב, אין לנו שום דבר שאנחנו מוסיפים או מדווחים. הנה הפונקציה delete product async, אנחנו כמובן לא היינו חייבים לקבל את האינפו כי אנחנו לא משתמשים איתו בהקשר הזה, אפשר לבנות את זה גם ככה, אבל בכדי שנדע שיש פה איזשהו אובייקט אינפו, אולי בהמשך נרצה להציג איזה משהו, נשאיר את האינפו כאן.
delete, בואו נסתכל אם יש לנו פה משהו לשנות. כאן אנחנו רואים delete, קיבלנו underline ID, לקחנו אותו, מחקנו, החזרנו 204, בואו נבדוק את זה. נעצור, נריץ, ניגש לפוסטמן.
קודם כל ניגש לכאן ונראה את כל המוצרים, נגלול פה למטה וניקח את האפל הזה. אוי, האמת, בואו קודם כל אולי נייצר לעצמנו אחד חדש, delete, ניקח את זה, נשים פה, האמת נראה לי שזה כל