כאשר מוציאים תוכנית ל-Production אנחנו כמובן לא משתמשים ב-DB שמאוחסן מקומית על המחשב שלנו, אלא מתחברים ל-server. אחת הדרכים לעשות את זה היא שימוש ב-MongoDB Atlas. כדי לעשות את זה נגיע לעמוד השירות של Atlas. שם אפשר לפתוח חשבון חינם בכפתור Try Free. אחרי הכניסה אפשר לפתוח DB חדש. שימו לב שמידי פעם יש שינויים […]
Indexes מאפשרים לשרת ה-DB לבצע שאילתות מסויימות למציאת רשומות בצורה יעילה בלי צורך לעבור על כל האוסף. נניח שאנחנו רוצים למצוא את כל הספרים שיש להם דירוג 10. בדרך הרגילה, MongoDB יעבור על כל האוסף, ספר אחרי ספר, כדי למצוא את הרשומות המתאימות. זה יכול להיות קצת לא יעיל, כי יכולות להיות אלפי רשומות. Index […]
ראינו פעולות שעובדות על המידע ב-DB. נניח שיש לי 1000 ספרים ב-DB, אני לא רוצה למשוך את כל ה-1000 ביחד, אלא כל פעם חלק ולהציג אותו למשתמש. את זה אפשר לבצע על ידי שליחת פרמטרים ל-Url. נניח שאנחנו רוצים לחלק את במידע לעמודים ובכל פעם לקבל עמוד אחר, נוכל להוסיף בפרמטרים את הפרמטר p עם […]
על מנת לעדכן רשומה קיימת משתמשים בפעולת patch. כדי לעדכן רשומה צריך את ה-ID שלה ואת השדות שאנחנו רוצים לעדכן שאותם נקבל דרך ה-body. כל שדה שלא יופיע ישאר כמו שהוא. את ההפעלה של השאילתא נעשה דרך Postman. נבחר בפעולת ה-Patch ונשלח את השדות אותם רוצים לעדכן דרך ה-Body של הבקשה.
על מנת למחוק רשומה נשתמש בפעולת Delete. הפעולה מוחקת לגמרי את הרשומה מה-DB. לפעמים אנחנו רוצים soft delete כלומר, נניח שספר לא נמצא במלאי, אנחנו לא וצים להוריד אותו ממסד הנתונים, רק שלא יופיע ברשימה. במקרה כזה אפשר להוסיף שדה שאפשר לקרוא לו למשל active שיהיה true כברירת מחדל, ולהפוך אותו ל-false במידה ואנחנו לא […]
בקשות Post שולחות מידע ל-DB. על מנת לשלוח מידע, צריך לייצר ספר ולשלוח אותו ב-body של הבקשה. על מנת להשתמש ב-body צריך להשתמש ב-middleware של express. נוסיף את app.use(express.json()) לראש הקובץ על מנת לעבד את אובייקט ה-Json שאנחנו שולחים. נקבל ממי שקורא לפונקציה את הספר להכנסה, נשתמש בפונקציה insertOne על מנת להכניס נתונים ונשלח איתה […]
התקנה של Postman מכיוון שהמטרה שלנו היא עבודה עם MongoDB ולא בניית אפליקציה מלאה, אין לנו Front End עם שדות קלט על מנת לשלוח מידע ל-DB או מסך שמציג את הנתונים. אפשר לייצר בקשות פנייה ל-DB ללא כתיבת תוכנית על ידי שימוש בכלי שנקרא Postman. זה כלי חינמי שמורידים למחשב והוא משמש לסימולציה של עבודה […]
הבאת כל הרשימה חיברנו את ה-API ל-DB. עכשיו נשתמש בשאילתת get כדי לקבל את רשימת הספרים. נשים לב שהפונקציה find מחזירה לנו cursor, שזה אובייקט שמצביע על קבוצת רשומות שמגיעה דרך השאילתא שלנו. בלי משתנים שנשלחים בתוך פונקציית find, ה-cursor יצביע על כל האוסף. אם יהיה לנו פילטר, ה-cursor יצביע על קבוצת הרשומות שעונה לתנאי […]
התחלת פרוייקט ב-Node העבודה עם MongoDB תהיה בדרך כלל מתוך אפליקציה. לכל סביבה יש driver אחר שמאפשר עבודה איתה. את רשימת הדרייברים אפשר למצוא בעמוד הדרייברים של MongoDB. נבוד עם החיבור של NodeJS כי זאת הדוגמא שנראה בהמשך. נדרש פה ידע ב-node. כדי להתחבר ל-MongoDB ניצור פרוייקט node חדש. ניצור קובץ כניסה לתוכנית בשם app.js. […]
ראינו סינון בסיסי של רשומות, למשל השאילתא הבאה תתן לנו את הרשומות הדירוג שלהן הוא 7 בדיוק: לפעמים נרצה סינון מורכב יותר, למשל את כל הרשומות שהדירוג שלהן הוא 7 או יותר. בשביל זה נשתמש באופרטורים. אופרטורים לאופרטורים ב-MongoDB יש סימן מקדים של $. כך תראה פנייה לאופרטור גדול מ… התוצאה לא תכלול את התוצאה […]