Django REST Framework’e Giriş
Django'nun sunduğu güçlü altyapı ile uygulamanızın backend kısmını hızlıca oluşturabilirsiniz. Ancak, dış dünyaya açılmak ve uygulamanızla etkileşime geçmek için bir API'ye ihtiyacınız var. Django REST Framework, Django’nun üzerinde çalışan, API’ler geliştirmeyi son derece kolaylaştıran bir araçtır.
Django REST Framework ile API'ler oluştururken veri modelleme, serileştirme, görünümler (views) ve URL yönlendirme gibi temel Django öğeleriyle tanışacaksınız. Her bir adımda bu öğeleri kullanarak, uygulamanızın dış dünya ile iletişim kurmasını sağlamak mümkün olacak.
Başlamadan Önce Gereksinimler
Django REST Framework’ü kullanabilmek için öncelikle Django’nun kurulu olması gerekir. Eğer Django'nun temel kurulumunu yapmadıysanız, aşağıdaki adımlarla başlayabilirsiniz.
Adım 1: Django Kurulumu
Eğer Django kurulu değilse, terminal veya komut istemcisine şu komutu yazın:
pip install djangoAdım 2: Django REST Framework Kurulumu
Django REST Framework'ü kurmak için şu komutu kullanabilirsiniz:
pip install djangorestframeworkAdım 3: Django Uygulaması Başlatma
Şimdi, yeni bir Django projesi başlatalım. Django'yu kurduktan sonra, terminale şu komutları yazın:
django-admin startproject myprojectBu komutlar, Django’nun temellerini atacak ve içinde çalışacağımız uygulamayı oluşturacaktır.
Django REST Framework ile İlk API
Django REST Framework’ün gücünü görmek için basit bir API oluşturmak, işin en keyifli kısmıdır. Hadi, bir “Kitaplar” API'si yapalım.
Adım 1: Serileştirme (Serializer)
Django REST Framework, modelleri JSON formatına dönüştürmek için serileştirici (serializer) sınıfını kullanır. Şimdi, kitaplarımıza dair bir serileştirici oluşturalım. `myapp/serializers.py` dosyasını oluşturun ve aşağıdaki kodu ekleyin:
from rest_framework import serializers
from .models import Book
class BookSerializer(serializers.ModelSerializer):
class Meta:
model = Book
fields = ['id', 'title', 'author', 'published_date']
Bu serileştirici, kitap modelindeki veriyi JSON formatına dönüştürecektir.
Adım 2: Görünümler (Views)
API'de, görünümler (views) verileri nasıl sunacağımızı belirtir. Şimdi, kitaplardaki verileri sunacak basit bir görünüm oluşturalım. `myapp/views.py` dosyasına şu kodu ekleyin:
from rest_framework.views import APIView
from rest_framework.response import Response
from .models import Book
from .serializers import BookSerializer
class BookList(APIView):
def get(self, request):
books = Book.objects.all()
serializer = BookSerializer(books, many=True)
return Response(serializer.data)
Bu görünüm, veritabanındaki tüm kitapları alır ve `BookSerializer` kullanarak JSON formatında döndürür.
Adım 3: URL Yönlendirmeleri
Son olarak, oluşturduğumuz görünümü URL’lerimize yönlendirmemiz gerekiyor. `myapp/urls.py` dosyasına şu kodu ekleyin:
from django.urls import path
from .views import BookList
urlpatterns = [
path('books/', BookList.as_view(), name='book-list'),
]
Adım 4: Django Ayarları
Şimdi, oluşturduğumuz uygulamayı Django projesine dahil edelim. `myproject/settings.py` dosyasını açın ve `INSTALLED_APPS` listesine `'rest_framework'` ve `'myapp'` ekleyin:
INSTALLED_APPS = [
...
'rest_framework',
'myapp',
]
Son Test: API’yi Çalıştırma
Artık her şey hazır. Django geliştirme sunucusunu başlatalım:
python manage.py runserverTarayıcınızda `http://127.0.0.1:8000/books/` adresine gidin. Eğer her şey doğruysa, kitaplarınızı JSON formatında görmelisiniz.
Sonuç: Django REST Framework ile API Oluşturma
İşte Django REST Framework ile API geliştirmeye başlamak bu kadar kolay! Bu temel adımları izleyerek, uygulamanız için güçlü ve esnek API'ler oluşturabilirsiniz. Django REST Framework, oldukça özelleştirilebilir ve genişletilebilir bir yapıya sahip, böylece daha karmaşık API'ler de oluşturmanız mümkün. Şimdi sırada daha fazla özellik eklemek, filtreleme, sorgulama parametreleri ve daha fazlası var. Hadi, bu temelleri öğrenmekle kalmayın, yeteneklerinizi bir adım daha ileriye taşıyın!