Davet et, 1 ay ücretsiz Pro kazanNasıl çalışır?

GitHub Copilot CLI ile Django projeleri: pratik rehber

GitHub Copilot CLI ile Django projesinde model, migration, DRF ve pytest döngüsünü adım adım öğrenin; kurulum dosyaları ve tuzaklar dahil.

Solviera Teknoloji 5 dk okuma

GitHub Copilot CLI, Django projesinde terminalde copilot yazıp başlatılır; ajan proje dosyalarını okur, komutları çalıştırır ve sizin onayınızla değişiklik yapar. Django’nun uygulama, migration, ORM ve test araçları güçlü bir komut satırı döngüsü kurduğu için bu ajan iyi bir çalışma arkadaşı olur. Aşağıda kurulum, çalışma düzeni, tipik görevler, test doğrulama ve çoklu ajan kullanımı anlatılıyor. Daha önce ajanı kurmadıysanız GitHub Copilot CLI sayfasındaki başlangıç adımlarını izleyin.

Neden GitHub Copilot CLI Django işine uyar

Django’nun iş akışı zaten terminal etrafında döner: python manage.py startapp, makemigrations, migrate, test, shell. GitHub Copilot CLI aynı terminalde yaşar; copilot başlatıldığında proje dosyalarını doğrudan tarar ve manage.py komutlarını sizin yerinize önerebilir. Model–serializer–view–urls zinciri tekrarlı ve kuralı bellidir; ajan bu zinciri hızlı kurar. Ayrıca hata mesajlarını okuyup aynı oturumda düzeltebilir; migration hatasında makemigrations çıktısını görüp eksik alanı tamamlar. Gerçek bir Django projesinde en çok zaman alan kısım kod yazmak değil, doğru sırayı ve import zincirini kurmaktır; ajan bunu azaltır. Django’nun settings, apps, urls ve admin parçaları arasındaki bağımlılığı anlaması, tek başına snippet üretmesinden daha değerlidir.

Projeyi ajan için hazırlamak

GitHub Copilot CLI, proje kökünde .github/copilot-instructions.md veya AGENTS.md dosyasını okur. Django projelerinde bu dosya kısa ve buyurgan olmalı; test, lint ve migration komutları ile klasör kuralları ajanın ilk denemesinde doğru yere yazmasını sağlar. Ayrıca settings.py modülünün hangi ortamı kullandığını, testlerin nasıl koştuğunu belirtmek gerekir. Aşağıdaki örnek, gerçek bir projede işe yarayan asgari bir talimat dosyasıdır.

# Django projesi için ajan talimatları

## Komutlar
- Bağımlılık: `uv sync` (yoksa `pip install -r requirements/dev.txt`)
- Test: `pytest` (pytest-django kurulu)
- Lint: `ruff check .`
- Format: `black .`
- Tip kontrolü: `mypy .` (opsiyonel)
- Migration: `python manage.py makemigrations`, `python manage.py migrate`
- Kontrol: `python manage.py check`

## Klasör düzeni
- Yeni uygulamalar `apps/<app_name>/` altında oluşturulur.
- Her uygulamanın testleri `tests/` paketindedir.
- Ortak yardımcılar `common/` altında; yeni util yazmadan önce oraya bak.

## Django kuralları
- Model değişikliği yapınca mutlaka migration üret; mevcut migration dosyasını elle düzenleme.
- ORM sorgularında N+1 üretme; ilişkili veri için `select_related` veya `prefetch_related` kullan.
- İş mantığını view içinde bırakma; servis fonksiyonuna veya model metoduna taşı.
- DRF serializer'larında `ModelSerializer` kullan ve alan adlarını `source` ile değiştir.
- Şablonda karmaşık koşul yazma; template tag veya include ile böl.
- Testlerde `@pytest.mark.django_db` kullanmayı unutma.

Bu dosyanın yazım mantığı hakkında daha geniş bilgi için CLAUDE.md nasıl yazılır? AGENTS.md ve GEMINI.md rehberi sayfasına bakabilirsiniz. GitHub Copilot CLI için de aynı prensipler geçerlidir; dosyayı değiştirdikten sonra ajanı yeniden başlatmak en temiz sonucu verir.

Çalışma döngüsü ve örnek promptlar

Ajanla çalışırken şu sırayı koruyun: önce istenen değişikliği net tanımlayın, sonra ajanın küçük ve doğrulanabilir bir adım atmasını isteyin, testleri çalıştırın, git diff ile değişikliği gözden geçirin. Django projelerinde tek seferde hem model hem migration hem view değişikliği istemek risklidir; bunun yerine model ve migration tamamlanınca test edin, sonra DRF veya view katmanına geçin. Ajan aynı oturumda birkaç komut çalıştırabilir; yine de her adımı siz onaylayın. Daha fazla kullanım ipucu için GitHub Copilot CLI nasıl kullanılır? Adım adım rehber yazısına göz atın.

Aşağıdaki beş prompt tipik Django görevleri için başlangıç noktasıdır:

  • apps/orders uygulamasını kur, Order ve OrderItem modellerini yaz, python manage.py makemigrations çalıştır ve oluşan migration dosyasını göster.
  • Product modeline slug alanı ekle, migration üret, python manage.py test apps.catalog çalıştır ve bozulan importları düzelt.
  • ProductViewSet ve ProductSerializer yaz, urls.py dosyasına router ile bağla, sonra pytest apps/catalog çalıştır.
  • Şu view içindeki for order in orders döngüsünde order.items.all() çağrısı N+1 üretiyor; prefetch_related kullanarak düzelt ve sorgu sayısını çıktıda göster.
  • pytest-django ile POST /api/orders/ endpoint’inin stok azaltma senaryosunu yaz; test geçene kadar düzelt.

Bu promptlarda komut adlarını açıkça yazmak ajanın doğru aracı çağırmasını sağlar. Türkçe veya İngilizce fark etmez; önemli olan dosya yolu ve beklenen çıktıyı vermektir.

Ajanın iyi olduğu işler ve Django tuzakları

Ajan özellikle tekrarlı Django katmanlarında hızlıdır, ancak güvenlik ve veri bütünlüğü sizin gözetiminizde olmalıdır.

GörevAjan neyi iyi yaparDikkat edilecek nokta
Model ve migrationmodels.py alanlarını, __str__ ve admin kaydını hızlı üretirMevcut migration dosyalarını düzenlemeye kalkabilir; her zaman yeni migration isteyin
DRF endpointSerializer, ViewSet, router zincirini kısa sürede kurarPermission, throttle ve filtreleme sınıflarını unutabilir; istekte açıkça sayın
ORM sorgususelect_related/prefetch_related önerebilirLazy relation’ları test etmeden yeterli diyebilir; sorgu sayısını doğrulayın
pytest-django testiBasit fixture ve django_db marker’ını yazarGerçek DB yerine transactional test davranışını karıştırabilir; fixture kapsamını kontrol edin
Şablon ve formForm ve template tag üretirŞablona Python benzeri logic sıkıştırabilir; TemplateDoesNotExist hatalarını göz ardı edebilir

Django’ya özgü en büyük tuzak migration çakışmasıdır. Ajan, var olan bir migration dosyasını değiştirmeye kalkabilir; bu üretimde geri alınamaz farklara yol açar. İkincisi settings.py ortam farkıdır: ajan test için local ayar kullanırken siz üretim değerlerini gözden kaçırabilirsiniz. Üçüncüsü ORM N+1: ajan incelemeden bırakırsa sayfa yavaşlar. Dördüncüsü DRF’de permission_classes, authentication_classes, filter_backends gibi güvenlik katmanlarını unutabilir; promptlarda bunları açıkça isteyin. Beşincisi sinyaller ve transaction sınırlarıdır; ajan post_save sinyalini yanlış yerde kullanabilir veya transaction.atomic sarmayı atlayabilir. Bu noktaları git diff ile özellikle gözden geçirin.

Django’da test ve doğrulama

Ajanın her adımından sonra üç kontrolü birlikte çalıştırın: python manage.py check, pytest, python manage.py makemigrations --check --dry-run. Birincisi Django proje yapılandırmasını, ikincisi davranışı, üçüncüsü migration eksiklerini yakalar. Ajan test geçti dese bile git diff --stat ile hangi dosyaların değiştiğini görün; özellikle migrations/ altındaki her dosyayı okuyun. pytest-django kullanan projede pytest komutu yeterli; test veritabanı oluşturulurken takılırsa ajanın --reuse-db kullanmasını isteyin. Testlerin gerçekten kritik senaryoyu kapsadığını kontrol edin; ajan bazen sadece 200 dönen yüzeysel bir test yazar. Ayrıca python manage.py check --deploy ile üretime yakın ayarları da doğrulatabilirsiniz; bu ajanın gözden kaçırdığı güvenlik ayarlarını ortaya çıkarır.

Birden çok ajanı AgentVera ile koşmak

Birden çok ajanı aynı Django projesinde koşturacaksanız AgentVera uygun bir kontrol paneli olur. Her ajan kendi git worktree’sinde çalıştığı için migration dosyaları ve apps/ klasörleri çakışmaz. Ajan bir turu bitirdiğinde ikinci model kodu inceler; bulgular doğrudan file:line olarak verilir, böylece bozuk import veya yanlış migration hızla bulunur. Tur snapshot’ları checkpoint olarak tutulur; hatalı bir değişiklik tek tıkla geri alınabilir. Token bütçeleri günlük taşmayı önler; ajan duraksasa bile konuşma geçmişi korunur. Django işlerinde bu özellikler çoklu ajan koordinasyonunu güvenli hale getirir.

Sonuç

GitHub Copilot CLI, Django projelerinde model, migration, test ve DRF döngüsünü hızlandıran pratik bir yardımcıdır. Başarı, doğru talimat dosyası ve küçük adımlarla çalışmaktan geçer. Her çıktıyı git diff ve testlerle doğrulayın; migration ve güvenlik katmanlarını asla atlamayın.

Sık sorulanlar

GitHub Copilot CLI Django projesinde nasıl başlatılır?

Proje kökünde terminal açıp copilot komutunu çalıştırmanız yeterlidir. Ajan proje dosyalarını okur ve sizden yapılacak işi ister; Django komutlarını aynı oturumda çalıştırabilir.

Copilot CLI Django migration dosyalarını güvenle yönetebilir mi?

Yeni migration üretmeyi iyi yapar, ancak mevcut migration dosyalarını elle düzenlememesi gerektiği talimatlarda açıkça yazılmalıdır. Migration sonrası python manage.py makemigrations --check --dry-run ile doğrulama şarttır.

GitHub Copilot CLI hangi talimat dosyasını okur?

Proje kökünde .github/copilot-instructions.md veya AGENTS.md dosyasını okur. Django projesi için build, test, lint komutları ve migration kuralları bu dosyaya yazılmalıdır.

GitHub Copilot CLI Django testlerini çalıştırabilir mi?

Evet, pytest veya python manage.py test komutlarını çalıştırabilir ve hata çıktılarını okuyarak düzeltme önerebilir. Yine de her değişiklik sonrası testleri siz de çalıştırıp sonucu görmelisiniz.

Ajanlarını bir masaya topla.

AgentVera’yı ücretsiz indir; kurulu CLI’ların hazır.

Diğer GitHub Copilot CLI rehberleri

Django için diğer ajanlar