Django REST Framework ile API Geliştirme: Adım Adım Kılavuz

**

BFS



Django, güçlü ve esnek yapısıyla web uygulamaları geliştirmek için sıklıkla tercih edilen bir framework'tür. Ancak bazen sadece bir web sitesi değil, aynı zamanda başka sistemlerle de iletişim kurmak istediğimiz API'lere de ihtiyacımız olur. İşte tam burada Django REST Framework (DRF) devreye giriyor.

Django REST Framework Nedir?

Django REST Framework, Django ile API'ler oluşturmayı kolaylaştıran bir araçtır. Web uygulamanızı geliştirirken API'ler (Application Programming Interface) kullanarak farklı sistemlerle veri paylaşabilir, veri alabilir ve kullanıcı etkileşimlerini yönlendirebilirsiniz. DRF, bu işlemi çok daha basit ve anlaşılır hale getiriyor.

Şimdi, Django REST Framework kullanarak basit bir API nasıl yapılır, adım adım keşfetmeye başlayalım.

Adım 1: Django Projesi Oluşturmak

İlk adımımız, Django'yu kurmak ve bir proje başlatmaktır. Eğer Django yüklü değilse, terminal veya komut satırında aşağıdaki komutu kullanarak yükleyebilirsiniz:


pip install django


Ardından, yeni bir proje oluşturmak için şu komutu çalıştırın:


django-admin startproject myproject


Adım 2: Django REST Framework Kurulumu

Django projemizi oluşturduktan sonra, DRF'yi kurmamız gerekiyor. Bunu yapmak için şu komutu çalıştırabilirsiniz:


pip install djangorestframework


Kurulum tamamlandıktan sonra, projemizin `settings.py` dosyasına gidip 'INSTALLED_APPS' listesine `'rest_framework'`'ü eklememiz gerekiyor:


INSTALLED_APPS = [
    ...
    'rest_framework',
]


Adım 3: Model Oluşturma

Şimdi, API'mizi besleyecek olan modelimizi oluşturalım. Diyelim ki, basit bir "Kitap" API'si yapacağız. Bunun için aşağıdaki gibi bir model oluşturabiliriz.


from django.db import models

class Book(models.Model):
    title = models.CharField(max_length=100)
    author = models.CharField(max_length=100)
    published_date = models.DateField()

    def __str__(self):
        return self.title


Modelimizi oluşturduktan sonra, veritabanına eklemek için terminalde şu komutları çalıştırmamız gerekiyor:


python manage.py makemigrations
python manage.py migrate


Adım 4: Serializer Oluşturma

Modelimizi oluşturduk, ancak bu veriyi API üzerinden gönderebilmemiz için bir *serializer* sınıfına ihtiyacımız var. Serializer, veriyi JSON formatına dönüştürerek dışa aktarılmasını sağlar.


from rest_framework import serializers
from .models import Book

class BookSerializer(serializers.ModelSerializer):
    class Meta:
        model = Book
        fields = ['id', 'title', 'author', 'published_date']


Bu adımda `BookSerializer` sınıfı, modelimizin verilerini JSON formatına dönüştürür. Artık bu veriyi dışarıya açabiliriz.

Adım 5: ViewSet ve URL'leri Ayarlama

Artık verilerimizi dışa açabiliriz. Bunun için bir ViewSet oluşturmalıyız. ViewSet, verilerin nasıl işleneceğini ve hangi HTTP yöntemlerinin kullanılacağını belirler. Aşağıdaki gibi bir ViewSet oluşturabiliriz:


from rest_framework import viewsets
from .models import Book
from .serializers import BookSerializer

class BookViewSet(viewsets.ModelViewSet):
    queryset = Book.objects.all()
    serializer_class = BookSerializer


Şimdi, bu ViewSet'i URL'lerle bağlayacağız. Django'nun `urls.py` dosyasına gidip aşağıdaki gibi bir URL tanımlaması yapmalıyız:


from django.urls import path, include
from rest_framework.routers import DefaultRouter
from .views import BookViewSet

router = DefaultRouter()
router.register(r'books', BookViewSet)

urlpatterns = [
    path('api/', include(router.urls)),
]


Bu adımda, `BookViewSet`'imizi `/api/books/` URL'ine bağlamış olduk. Artık API'miz çalışıyor!

Adım 6: API'yi Test Etme

Son olarak, API'mizin doğru çalışıp çalışmadığını test etmeliyiz. Django'nun yerleşik sunucusunu başlatmak için şu komutu çalıştırın:


python manage.py runserver


Sunucu çalışmaya başladığında, tarayıcınızda `http://127.0.0.1:8000/api/books/` adresine giderek API'nizin düzgün çalışıp çalışmadığını kontrol edebilirsiniz.

Sonuç

İşte karşınızda, Django REST Framework ile basit bir API oluşturma süreci! Django'nun güçlü yapısı ve Django REST Framework'ün sunduğu kolaylıklar sayesinde, karmaşık API'ler oluşturmak oldukça hızlı ve eğlenceli bir hale geliyor.

Bu yazıda öğrendiklerinizle, kendi projelerinize kolayca API entegrasyonları yapabilirsiniz. Unutmayın, her zaman test etmeyi ve dökümantasyonu incelemeyi unutmayın!

İlgili Yazılar

Benzer konularda diğer yazılarımız

ApiUp Nedir?

Merhabalar, bir süredir üzerinde çalıştığım yeni projemi hayata geçirdim. Bu Proje sayesinde, IRC sunucuları en popüler uygulamalarla entegre edilebiliyor. Şu anda Skype, WhatsApp ve Telegram uygulamalarını destekliyoruz. API Sayesinde, IRC Sunucularından...

ASP.NET Core ile Mobil Uygulama Geliştirme: Cross-Platform Web ve Mobil Uygulama Birleştirme

Günümüzde mobil uygulamalar hayatımızın ayrılmaz bir parçası haline geldi. Akıllı telefonlarımızda geçirdiğimiz zamanın büyük bir kısmını mobil uygulamalar sayesinde geçiriyoruz. Peki, bir mobil uygulama geliştirirken karşılaştığımız zorlukları nasıl...

ASP.NET Core 500 Internal Server Error: Sebepleri ve Çözümleri

Bir web geliştiricisi olarak, karşılaştığınız en zorlayıcı hatalardan biri şüphesiz "500 Internal Server Error"dır. Bu hata, web uygulamanızda her şeyin yolunda gittiğini düşündüğünüz bir anda karşınıza çıkabilir ve tüm projeyi durdurabilir. Ancak merak...