Bu proje, FastAPI ve SQLAlchemy ile geliştirilmiş bir telefon rehberi API uygulamasıdır. Veritabanı olarak Microsoft SQL Server kullanılarak rehbere kişi ekleme, silme, düzenleme, görüntüleme ve kişi arama işlemlerini gerçekleştirir.
Proje dosyalarının organizasyonu ve aralarındaki ilişkiler aşağıdaki gibidir:
📁 rehber-api
│
├── README.md # Proje hakkında genel bilgiler, kullanım ve kurulum talimatları
├── __init__.py # Paket yapılandırma dosyası
├── database.py # Veritabanı bağlantısı ve oturum yönetimi
├── main.py # FastAPI uygulamasının ana dosyası ve endpoints tanımlamaları
├── models.py # SQLAlchemy modellerini tanımlar
├── schemas.py # Pydantic şemalarını tanımlar
└── requirements.txt # Projede kullanılan kütüphaneleri tanımlar
- Kişi ekle: İsim, soyisim, telefon numarası ve adres gibi bilgileri veritabanına ekler.
- Kişileri listele: Tüm kayıtlı kişilerin bilgilerini döndürür.
- Kişiyi ID ile arama: Belirli bir ID'ye sahip kişiyi arar.
- Kişiyi düzenle: Id ile mevcut bir kişinin bilgilerini günceller.
- Kişiyi sil: Id ile rehberden bir kişiyi siler.
-
Kişi Ekle
- URL:
/rehber
- Metot:
POST
- Parametreler:
Name
,Surname
,Number
,Adress
- Yanıt: Eklenen kişinin bilgileri
- URL:
-
Kişileri Listele
- URL:
/rehber
- Metot:
GET
- Yanıt: Tüm kayıtlı kişilerin bilgileri
- URL:
-
Kişi Ara
- URL:
/rehber/{id}
- Metot:
GET
- Parametreler:
id
(aranacak kişinin ID'si) - Yanıt: Belirli kişiye ait bilgiler
- URL:
-
Kişi Sil
- URL:
/rehber/{id}
- Metot:
DELETE
- Parametreler:
id
(silinecek kişinin ID'si) - Yanıt: Başarı durumunda
"detail": "Kişi silindi"
mesajı
- URL:
-
Kişi Güncelle
- URL:
/rehber/{id}
- Metot:
PUT
- Parametreler:
id
(güncellenecek kişinin ID'si),Name
,Surname
,Number
,Adress
- Yanıt: Güncellenen kişinin bilgileri
- URL:
- Python 3.x
- Microsoft SQL Server ve ODBC sürücüsü (ODBC Driver 17 for SQL Server)
- Python için
FastAPI
,SQLAlchemy
,pyodbc
, veuvicorn
paketleri
-
Proje bağımlılıklarını yükleyin: pip install -r requirements.txt
-
database.py
dosyasındaki veritabanı bağlantı ayarlarını düzenleyin: server_name = "SUNUCU_ADINIZ" # SQL Server ismi database_name = "telefon_rehberi" # Veritabanı adı -
Veritabanı tablolarını oluşturmak için
main.py
kodunu çalıştırarak FastAPI'yi başlatın: uvicorn rehber.main:app --reload
Tarayıcınızda "localhost:8000/docs" adresine giderek kişi ekleme, silme, düzenleme, görüntüleme ve kişi arama işlemlerini gerçekleştirebilirsiniz.
Yeni bir kişi eklemek için:
- Tarayıcınızda localhost:8000/docs adresine gidin.
- Kisi Ekle'yi seçin ve "Try it out" butonuna tıklayın.
- Alana örnekteki gibi bilgileri girin:
{ "Name": "Ahmet", "Surname": "Yılmaz", "Number": "05551234567", "Adress": "İstanbul" }
4. "Execute" butonuna tıklayın.