הקדם
FastAPI מאוד מתפקד כשירת רשת גבוהה ביצועים וקלה לשימוש עבור בניית API בעזרת הפיתוח בפיתוח הפיתוח בפיתוח Python. כשהוא מקבל צוותה עם בסיס נתונים יחסי, FastAPI יכול להיות משמש ליצירת יישומים חזקים ומסוגלים להתארך. הדרכה הזו תסיע אתכם דרך תהליך הקימה של יישום FastAPI עם בסיס נתונים יחסי על מכונת Ubuntu 24.04. אנחנו נעבור על הכל, מהתקנת הכלים הנחוצים להגדרת הבסיס הנתונים ויצירת נקודות הסיום של ה API.
השתמשות ב FastAPI עם בסיס נתונים PostgreSQL
- הגדרת הסביבה הפיתוחית ל Python
- יצירת סביבה והפעלתה מושלמת
- התקנת PostgreSQL והגדרהה
- יצירת יישומון FastAPI
- התקנת ספרים חובים
- בעידן היישומון הפיסי
- בדיקת נקודות הסיום של יישומון FastAPI
דרישות קדם
לפני שתעבדו בהדרכה הזו, אתה צריך:
-
שרת פועל של Ubuntu ביחד עם משתמש לא שורשים עם זכויות sudo ומחסום כבד פעיל. עבור הוראות על איך להגדיר את זה, בבקשה בחר את החלון המתאים למערכת שלך מרשימת זאת ועידן השיטה הראשונית של השרת. אנא ודא שתעבדו עם הגירסה המתמשכת של Ubuntu.
-
מודעות לשוני הפעולה בלינוקס. עבור התחלה או הרעיון מחדש לשוני הפעולה, תוכלו לבקר במדריך זה על מקצב בסיסי של שוני הפעולה בלינוקס.
-
בואו בשרת Ubuntu ובקש
sudo apt-get update
כדי לוודא שלמערכת יש את הגרסאות העדכניות והעדכניות הבטיחות לתוך התוכנה הזמינה מהאגרות המוגדרות על המערכת שלך.
אותם ההוראות האלה מוצעות לגבי הגירסאות העדכניות ביותר של Ubuntu: Ubuntu 24.04, Ubuntu 22.04 ו Ubuntu 20.04. אם אתה משתמש בגירסא של Ubuntu <= 18.04, אנחנו ממליצים לך לעדכן לגירסה יותר חדשה מפני שUbuntu אינו מספק תמיכה עוד לגירסאות אלה. אוסף הדרכים הזה יעזר לך בעדכון הגירסה של ה Ubuntu שלך.
שלב 1 – הגדרת סביבת Python
Ubuntu 24.04 מופעל על ידי מצב באופן ברזל Python 3. פתח את ה terminal ובואו על הפעם עם הפקודה הבאה כדי לבדוק את התקנת Python 3:
אם Python 3 כבר מותקן על המחשב שלך, הפקודה הזו תחזיר את הגירסה הנוכחית של התקנת Python 3. במקרה שהוא לא מותקן, תוכל להריץ את הפקודה הבאה ולקבל את התקנת Python 3:
בהמשך, עליך להתקין את המשיכה pip
והמשיכה dev
על המערכת שלך. בוא על הפעם עם הפקודה הבאה ב terminal:
בהדרכה זו, אנחנו נשתמש בPostgreSQL כבסיס נתונים רלאונלי. כדי להתחבר לבסיס נתונים PostgreSQL, צריך להתקין libpq-dev
באמצעות הפקודה הבאה:
שלב 2 – יצירת והפעלת סביבה מדמה
אם אתה משתמש בUbuntu בגירסה < 24.04, לא צריך ליצור סביבה מדמה. תוכל להתעלם מהשלב הבא הבא.
השלב הבא הוא ליצור סביבה מדמה בתוך התקנתך של Ubuntu כדי להפריד את האפליקציות Python מהסביבה המקומית שלך. כדי לעשות זאת, הלכי לתוך המפתח העבודה שלך והרי את הפקודות הבאות:
הפקודה הזו תיצור סביבה מדמה חדשה במחלקה שנקראת fastapi-env
. היא תהיה עם מערך מוגדר משלה של פקידים Python, מבודדים מפרויקטים אחרים.
כדי לוודא שהפקידים שתעלה מהרגע הזה יותקנו בתוך הסביבה המדמה הזו, תצטרכה להפעיל אותה בעזרת הפקודה הבאה:
בהיגשה, תוכל להבחין בטרמינל עם סימן קדם על השם של הסביבה המדמה שלך כך:
Output(fastapi-env) ubuntu@user:
שלב 3 – התקנת PostgreSQL
השלב הבא הוא התקנת PostgreSQL (או את הבסיס המידעי המועדף עליך).
עכשיו, הגיע הזמן להתחיל ולאפשר את שירות הPostgreSQL בתוך הסביבה הוירטואלית שלך.
ניתן לבדוק את מצב שירות הPostgreSQL על-ידי ריציינדינג את sudo systemctl status postgresql
. אחרי שהשירות יועלה, הוא מתחיל באופן אוטומטי בהתחלה המערכת.
כדי להתקין ולהשתמש בPostgreSQL בקשר לFastAPI, צריך להתקין כמה דברים:
asyncpg
: זה נתב הניהול האסינכרוני של PostgreSQL שמאפשר לFastAPI לתקשר עם בסיס המידע PostgreSQL.SQLAlchemy
: זה כלי עיצוב רשתות (ORM) שעוזר לך לנהל סקימות ושאילות בבסיס המידע בעזרת קוד פינגווין במקום כתיבת SQL בעצם.databases
: זה ספריה לנתבים באקסיום הנדרשת על ידיSQLAlchemy
כדי לפעול באופן אסינכרוני עם FastAPI.
כדי להתקין את אלה, ניתן לבצע את הפקודה המאוחתת הבאה:
בהמשך, ניצור בסיס מידע Postgres ומשתמש עם הזכויות הדרושות.
שלב 4 – יצירת יישומה פיינגווין דוגמה
אתה צריך יישומה פייתון פיתוח פיתוח שתגיע אל הבסיס המידעי שלך דרך FastAPI. אם אין לך יישומה פייתון פעילה, אתה יכול ליצור אחת בקצב ראשון על ידי הבאות הצעדים:
יצירה של קובץ מקורי Python בשם postgres_db.py
בתוך המיזם שלך.
במערכת העיתונים, תכתב הגיונך כדי ליצור קישור בסיס מידע וליצור טבלה בתוך הבסיס המידעי. במקרה זה, אנחנו יוצרים קישור בסיס מידע PostgreSQL בעזרת החברה databases
ומגדירים את המבנה של טבלת books
בעזרת SQLAlchemy
.
שמירה וסגירה של הקובץ.
בהמשך, יצירה main.py
באותו מחלק.
תכתב את ההגיון העיקרי של היישומך בקובץ זה:
הקוד הזה משתמש ב FastAPI כדי לכתוב רשימות חדשות של ספרים בבסיס המידע PostgreSQL ולשלוט באוסף הספרים ממנו.
שלב 5 – התקנת ספרי הידעה הדרושים
ביישומך הפייתון, אתה מגיע אל כל מיני ספרי ידעה וחביות. לפני שירות היישום, ודא שתשתמש בספרי הידעה הדרושים.
שלב 6 – הפעלת יישומה הפייתון
עכשיו, הזמן לבצע את היישום שנוצר.
uvicorn
הוא ממשק מנף של עמוד שרת אסינכרוני (ASGI) שמשתמש בו לשרת יישומות FastAPI. שימוש בuvicorn
הוא דרך מועדפת לבצע יישום FastAPI מפני שFastAPI הוא מערך גרף אסינכרוני בעצמו.
אם הפקודה העליונה מובצעת ללא שגיאה, אתה תראה יוצאת דומה לדוגמה הבאה:
OutputINFO: Will watch for changes in these directories: ['/path/to/your/project']
INFO: Uvicorn running on http://127.0.0.1:8000 (Press CTRL+C to quit)
INFO: Started reloader process [XXXX] using StatReload
INFO: Started server process [YYYY]
INFO: Waiting for application startup.
INFO: Application startup complete.
בדפדפן האינטרנט, ניווט לhttp://127.0.0.1:8000
כדי לראות את התוצאות של השאלה.
שלב 7 [אופציונלי] – בדיקת הנקודות
אתה יכול לבדוק את הנקודות המוגדרות בmain.py
שלך (למשל, POST
וGET
) על-ידי שליחת בקשות HTTP אל השרת שמפעיל על http://127.0.0.1:8000
.
באופן דומה, תוכל לבצע קריאה GET
אל אותו שרת כדי לשאת את רשימת הספרים הנמצאים בבסיס המידע Postgres שלך.
סיכום
בהדרכה זו, צעדתם דרך התהליך של הגדרת יישומון פשוט של FastAPI המתעסק עם בסיס נתונים PostgreSQL. השלבים האלה מועילים גם ליישומות AI, במיוחד כשצריך לבנות את הרשת האינטראקטיבית שלך על מנת לתקשר עם המודלים שלך או לנהל מידע קשור לתהליכים הAI שלך. עם היסוד הזה במקום, עכשיו תוכל לבנות ולהרחיב את הפרוייקטים שלך בFastAPI.
הבאו לאחר יותר מאמרים על איך לעבד עם FastAPI.
Source:
https://www.digitalocean.com/community/tutorials/use-fastapi-with-relationaldb-ubuntu