WEB APPLICATIONS WITH DJANGO: MODELS AND CLASS-BASED VIEWS EĞİTİMİ

Django modelleri ve CBV'lerde ustalaşın

Model ilişkileri, QuerySet optimizasyonu, generic CBV ve mixin yapılarıyla temiz Django kodu yazın.

Eğitim, model alanları, Meta seçenekleri, ForeignKey/ManyToMany/OneToOne ilişkileri ve migration yönetimini ele alır; QuerySet, Q/F nesneleri, annotate/aggregate ve select_related/prefetch_related ile N+1 sorgu optimizasyonunu uygular.

2 gün Orta Seviye Online / Yüz Yüze / Hibrit Sertifikalı

Eğitim Hakkında

Model katmanı ile class-based view'ları birlikte güçlendirin.

Eğitim, model alanları, Meta seçenekleri, ForeignKey/ManyToMany/OneToOne ilişkileri ve migration yönetimini ele alır; QuerySet, Q/F nesneleri, annotate/aggregate ve select_related/prefetch_related ile N+1 sorgu optimizasyonunu uygular. ListView, DetailView, CreateView gibi generic CBV'ler, mixin'ler, ModelForm ve testlerle yapı tamamlanır.

Süre ve Format

2 Gün. Her gün dört modül; sabah model ve ORM, öğleden sonra CBV uygulaması.

Seviye

Orta Seviye — model ilişkileri, ORM optimizasyonu, generic CBV'ler, mixin'ler ve form entegrasyonu

Öğrenme Metodu

Her konu, birlikte büyütülen bir katalog uygulamasında sorgu sayısı ölçülerek işlenir.

Neden Bu Eğitim?

🎯Verimli Sorgular

N+1 problemini tespit edip ORM ile çözersiniz.

🛠️Temiz View Kodu

Generic CBV ve mixin'lerle tekrar eden kodu azaltırsınız.

📈Bütünlük

Kısıtlar ve doğrulamalarla veri tutarlılığını modelde güvence altına alırsınız.

Anahtar Konular

Django modelsclass-based viewsDjango CBVDjango ORMselect_related prefetch_relatedModelFormDjango mixinDjango QuerySet
“Model sağlam olduğunda, view kendiliğinden sadeleşir.”

Ön Koşullar

Eğitimden verim almak için faydalı olacak bilgi ve ortam gereksinimleri

1
Django temelleri

Proje, URL ve temel view kullanımı bilinmelidir.

2
Python OOP

Sınıf, kalıtım ve mixin kavramı gerekir.

3
SQL

JOIN ve GROUP BY mantığı faydalıdır.

4
Ortam

Python 3.10+, Django 4.2/5.x ve django-debug-toolbar kurulu olmalıdır.

Eğitim İçeriği

Programın gün gün akışı aşağıdadır. Bir güne tıklayarak o günün modüllerini ve içeriklerini görebilirsiniz.

Günün hedefiKatılımcı model ilişkilerini kurar ve ORM sorgularını optimize eder.
Modül 1
Model Tanımlama ve Migration
  • models.Model, alan türleri (CharField, DateTimeField, DecimalField) ve seçenekler
  • null, blank, default, choices ve validators
  • makemigrations, migrate, sqlmigrate ve migration geçmişi
  • Meta sınıfı: ordering, indexes, constraints, verbose_name
  • __str__, özel metotlar ve model yöneticileri (Manager)
  • SQLite'tan PostgreSQL'e geçiş ayarları
Modül 2
Model İlişkileri
  • ForeignKey, on_delete seçenekleri (CASCADE, PROTECT, SET_NULL)
  • ManyToManyField, through modeli ve ara tablo alanları
  • OneToOneField ile profil genişletme deseni
  • related_name ve ters ilişki erişimi (_set)
  • Kendine referans ve genel ilişkiler (GenericForeignKey)
  • Veri bütünlüğü kısıtları ve unique_together
Modül 3
ORM Sorguları ve QuerySet
  • all, filter, exclude, get ve alan arama ifadeleri (__icontains, __gte)
  • Q nesneleriyle OR/AND ve F ifadeleriyle alan karşılaştırması
  • annotate, aggregate, Count, Sum, Avg ve values()
  • select_related ve prefetch_related ile N+1 sorunu çözümü
  • Slicing, order_by, distinct ve tembel değerlendirme
  • str(qs.query), Django Debug Toolbar ve connection.queries ile sorgu inceleme
Modül 4
Admin Paneli Özelleştirme
  • admin.site.register ve @admin.register dekoratörü
  • list_display, list_filter, search_fields, date_hierarchy
  • Inline modeller (TabularInline, StackedInline)
  • Özel admin eylemleri (actions) ve readonly_fields
  • createsuperuser, grup ve izin yönetimi
  • Admin sitesinin başlık, şablon ve erişim özelleştirmesi
Günün hedefiKatılımcı CBV ve form yapılarıyla CRUD akışını tamamlar.
Modül 1
Fonksiyon View'ları ve Şablon Dili
  • HttpRequest/HttpResponse, render() ve get_object_or_404()
  • Template dili: değişkenler, {% for %}, {% if %}, filtreler
  • Şablon kalıtımı: {% extends %}, {% block %} ve {% include %}
  • Statik dosyalar: {% load static %}, collectstatic
  • HTTP yöntemleri, GET/POST ve redirect
  • Özel 404/500 sayfaları ve DEBUG davranışı
Modül 2
Sınıf Tabanlı View'lar (CBV)
  • View, TemplateView ve as_view() çalışma mantığı
  • ListView, DetailView, CreateView, UpdateView, DeleteView
  • get_queryset, get_context_data ve form_valid geçersiz kılma
  • Mixin'ler: LoginRequiredMixin, PermissionRequiredMixin
  • success_url, reverse_lazy ve sayfalama (paginate_by)
  • CBV ve FBV arasında seçim kriterleri
Modül 3
Django Formları ve Doğrulama
  • forms.Form alanları, widget'lar ve is_valid() akışı
  • ModelForm ile modelden form üretimi ve save()
  • clean_<alan>() ve clean() ile özel doğrulama
  • CSRF belirteci ({% csrf_token %}) ve güvenlik
  • Form hatalarının şablonda gösterimi ve crispy-forms
  • FormSet ve inline formset kullanımı
Modül 4
Django Test, Güvenlik ve Dağıtım
  • TestCase, Client ve test veritabanı yaşam döngüsü
  • Factory Boy / fixtures ile test verisi
  • XSS, CSRF, SQL enjeksiyonu ve clickjacking korumaları
  • manage.py check --deploy ve güvenlik ayarları (SECURE_*, HSTS)
  • Statik/medya dosyaları, collectstatic ve S3 depolama
  • Docker ve Gunicorn ile dağıtım

Eğitim Kazanımları

Program sonunda katılımcılar:

✅
Modeller ve migration

model sınıflarını tanımlayıp migration ile şemayı yönetebilirsiniz

⚙️
Model ilişkileri

ForeignKey, ManyToMany ve OneToOne ilişkilerini doğru kurup sorgulayabilirsiniz

🔍
ORM sorguları

QuerySet, Q ve F nesneleriyle verimli veritabanı sorguları yazabilirsiniz

📊
Admin paneli

ModelAdmin ile yönetim panelini ihtiyaca göre özelleştirebilirsiniz

🧩
View ve şablonlar

view fonksiyonları ve Django Template Language ile dinamik sayfalar üretebilirsiniz

🚀
Class-based view'lar

generic CBV'leri kullanıp özelleştirebilir ve mixin ile genişletebilirsiniz

🔒
Formlar

Form ve ModelForm ile girdi doğrulama ve CSRF korumalı formlar yazabilirsiniz

📦
Test ve güvenlik

birim test yazıp güvenlik kontrol listesiyle Django uygulamasını yayına hazırlayabilirsiniz

Kimler İçin Uygundur?

  • Django temellerini bilen
  • model/view katmanını derinleştirmek isteyen backend geliştiricileri

Sıkça Sorulan Sorular

Bu eğitim kimler için uygundur?
Django temellerini bilen ve model/view katmanını derinleştirmek isteyen backend geliştiricileri. Ön bilgi beklentileri için eğitimin ön koşullar bölümüne bakabilirsiniz.
CBV mi fonksiyon view mi?
Eğitimde iki yaklaşımın ne zaman uygun olduğu ve CBV'lerin hangi kalıplarda avantaj sağladığı örneklerle tartışılır.
Sorgu performansını nasıl ölçerim?
Django Debug Toolbar, connection.queries ve assertNumQueries ile sorgu sayısı ve süresi ölçülür.
Eğitim sonunda sertifika verilir mi?
Katılım ve başarı koşullarını yerine getiren katılımcılara Digital Vizyon Akademi Katılım ve Başarı Sertifikası verilir.
Eğitim uygulamalı mı ilerliyor?
Her konu, birlikte büyütülen bir katalog uygulamasında sorgu sayısı ölçülerek işlenir. Süre 2 gündür; her gün dört modül işlenir.

Sertifikalandırma

Bu eğitim Digital Vizyon Akademi Başarı Sertifikası ile tamamlanır.

Eğitim başında “Ön Test”, bitiminde “Son Test” uygulanarak gelişim ölçümlenir. Değerlendirme formunu dolduran katılımcılar sertifikalarını alır. Sertifikanızın geçerliliğini Sertifika Sorgulama sayfasından doğrulayabilirsiniz.

Örnek Sertifika d Digital Vizyon AKADEMİ KATILIM SERTİFİKASI Bu sertifika [Katılımcı Adı Soyadı] adlı katılımcının aşağıdaki eğitim programını başarıyla tamamladığını belgeler. Web Applications with Django: Models and Class-based Views E Sertifika Kodu DV-2026XX00 Tarih 27.10.2026 Yetkili İmza DV AKADEMİ

Eğitim Bilgileri

Süre2 gün
SeviyeOrta Seviye
FormatOnline / Yüz Yüze / Hibrit
KonuPython
Sertifika✓ Var
Hemen Bilgi Al
İlgili Eğitimler

Bu Eğitimle Birlikte Tercih Edilenler

PythonBuilding Web Apps Using Django: Implementing Login & Logout Eğitimi
Yazılım Geliştirme Eğitimleri

Building Web Apps Using Django: Implementing Login & Logout Eğitimi

2 günOrtaOnline / Yüz Yüze / Hibrit

Django login ve logout eğitimi: authenticate, LoginView, LogoutView, login_required, oturum yönetimi, parola sıfırlama, özel kullanıcı modeli ve izinler.

Detayları Gör →
PythonBuilding Web Apps Using Django: Introduction to Web Frameworks & Django Eğitimi
Yazılım Geliştirme Eğitimleri

Building Web Apps Using Django: Introduction to Web Frameworks & Django Eğitimi

2 günBaşlangıçOnline / Yüz Yüze / Hibrit

Web çerçeveleri ve Django'ya giriş eğitimi: istek-yanıt döngüsü, WSGI/ASGI, Flask ile karşılaştırma, MVT mimarisi, proje kurulumu ve ilk Django uygulaması.

Detayları Gör →
PythonBuilding Web Apps Using Django: Models & User Registration Eğitimi
Yazılım Geliştirme Eğitimleri

Building Web Apps Using Django: Models & User Registration Eğitimi

2 günOrtaOnline / Yüz Yüze / Hibrit

Django modeller ve kullanıcı kaydı eğitimi: model alanları, migration, ORM sorguları, ilişkiler, ModelForm, UserCreationForm, CSRF ve kayıt akışı uygulamaları.

Detayları Gör →
PythonBuilding Web Apps Using Django: Templates & User Administration Eğitimi
Yazılım Geliştirme Eğitimleri

Building Web Apps Using Django: Templates & User Administration Eğitimi

2 günOrtaOnline / Yüz Yüze / Hibrit

Django şablonlar ve kullanıcı yönetimi eğitimi: template dili, kalıtım, özel tag ve filtreler, context processor, admin özelleştirme, grup ve izin yönetimi.

Detayları Gör →
PythonBüyük Veri ve Python ile Uygulamaları Eğitimi
Yazılım Geliştirme Eğitimleri

Büyük Veri ve Python ile Uygulamaları Eğitimi

4 günİleriOnline / Yüz Yüze / Hibrit

Büyük veri ve Python uygulamaları eğitimi: PySpark, Dask, Polars, Parquet, Kafka akış işleme, Airflow ve ölçeklenebilir veri hattı tasarımı.

Detayları Gör →
+90 (501) 369 40 14 WhatsApp [email protected] LinkedIn