Django Rest Framework – Serialization Kullanımı



Merhabalar, üçüncü yazıyla karşınızdayım. Zaman buldukça django rest framework serisini bitirmeye çalışıcam. Bir önceki makalede, hızlı başlangıç yaptık. Hızlı başlangıç ile, çok üstün körü bir inceleme yaptık, bundan sonraki yazılarda rest framework’ün bütün parçalarını tek tek inceleceğiz. İlk parça olarak Serialization anlatacağız, umarım faydalı olur.

İlk makaleyi okuduğunuzu ve gerekli kurulumları yaptığınızı varsayarak ayrıca boş veya dolu bir django projeniz olduğunu varsayarak anlatımlara devam edicem.

Lafı çok uzatmadan, başlıyalım.

Şimdiki örneğimiz,

pygments-kurulumu

Ubuntu Paste adlı bir sitemiz olduğunu düşünelim. Bu sitede sürekli kod paylaşılıyor, Aynı mantıkla çalışan “pygments” adlı modülü kullanarak, kod paylaşım sitesi için api hazırlayacağız.

 


httpie-kurulumu

 

Ayrıca, yapacağımız api sitemini test etmek için “httpie” adlı modülü kullanacağız. Bu sayede, kuracağımız api’ye yanıtlar yollayip, istediğimiz verileri çekeceğiz. Httpie hakkında daha detaylı bilgi almak için, https://httpie.org/ ziyaret ediniz.

 

 

 

Gerekli Kurulumlar

  • pygments kurulumu

  • httpie kurulumu

Haydi Başlıyalım, başlamadan önce sıcak bir kahve tavsiye edilir 🙂


1-) Settings.py Ayarların Yapılması

Klasik olarak, yüklü olan paketi aktif hale getirmemiz gerekiyor.

2-) Model Oluşturma

django-admin-panel

Kod açıklamalarını okumadan aşşağı inmeyin!

Yapıyı ilk gördüğümüzde karışık gelebilir, ama gelmesin aslında çok basit !

  • LEXERS,LANGUAGE_CHOICES ve STYLE_CHOICES adlı değişkenler, pygments modülün özellikleridir.
  • Snippet” adlı klasik django modeli oluşturduk.

Modeli Admine Ekliyelim.

admin.py‘a girip şunları yazalım ;

Modeli ve kullanıcıyı artık oluşturalım!;


3-) Serialization Oluşturma

Django modellerini Serialization bağlayacağız. Bu sayede, api işlemleri aslında Serialization tarafından yürütülmeye devam edecektir.

Olayı şöyle özetleyebiliriz ;

Eğer Api sistemine , get istediği gelirse views.py gerekli kontrolü yapip, serializers.py verileri yönlendirip bize JSON çıktı atacaktır.







Eğer api sistemine update ve create yani post yoluyla istek yollanırsa views.py gerekli kontrolü yapip, serializers.py verileri yönlendirip, verileri modellere işleyecektir.


Dediklerimi, uygulayarak gösterirsem daha anlaşılır olabilir.

Python shell çalıştıralım.

İlk olarak, modülleri ekliyelim.

İkinci olarak, bir kaç veri ekliyelim.

Üçüncü olarak, eklediğimiz veriyi çekelim.

Şeklinde bize, çıktı atacaktır. Tamamiyle bir dict(sözlük) şeklinde bir çıktıdır.

Döndürcü olarak, JSON Çıktı

Json olarak çıktı almak istiyorsak ;

şeklinde JSON çıktı alacağız.

4-) Views.py Fonksiyonlarını Oluşturma

Yukarda anlatıklarım biraz kafada arap saçına dönmüş olabilir ama views.py görünce biraz daha ortalık aydınlacaktır.

Özetlemek gerekise ;

Öncelikle views.py request(yanit) geliyorsa, sonrasında post edilecekse is_valid() filitresinde geçiyor, gerekli kontroller edildikten sonra(yok ise 404 göster) serializer tarafından gönderilip, json çıktı kullanıcıya yansiyor.

4-) Url.py Rotaları Oluşturma

Son olarak, rotalarımızı oluşturup bitirelim.


Admin panele girip, 4-5 adet veri ekliyelim.

python-get-ve-post

python-hello-world


Şimdi, siteye http istek yollayalım.

django-rest-framework

Windows için CMD , linux için terminal ekranını açalım.

Tüm verileri aldık harika!

Şimdi  id’e göre veri çekelim.

 


Emoji olarak yorumla :)
eh işte! eh işte!
0
eh işte!
Harika Harika
0
Harika
Hahaha! Hahaha!
0
Hahaha!
Vay be! Vay be!
0
Vay be!
Şekilsin Şekilsin
0
Şekilsin
Muhteşem Muhteşem
0
Muhteşem
Beğendim Beğendim
0
Beğendim
Beğenmedim Beğenmedim
0
Beğenmedim

Django Rest Framework – Serialization Kullanımı

Giriş Yap

Hoşgeldin, sefa getirdin :)

Şifre Sıfırla

Şifreni bidaha unutma lütfen :)

Geri git :
Giriş Yap