Django Nedir ve Neden Tercih Edilir?
Django, Python ile geliştirilen bir web framework'üdür. Bu framework, hızlı geliştirme ve güvenlik konularında geliştiricilere büyük kolaylıklar sunar. Django, sağlam yapısı ve ölçeklenebilirliği ile ünlüdür. Eğer dinamik bir web uygulaması geliştirmek istiyorsanız, Django mükemmel bir tercih olacaktır.
Peki, neden Django? Çünkü Django, projelerinizi sıfırdan başlatmak yerine, temel yapı taşlarını ve fonksiyonlarını sunarak size büyük bir hız kazandırır. Ayrıca, büyük projelerde güvenliği sağlamak için pek çok yerleşik özellik sunar. Django’nun bu kadar popüler olmasının bir nedeni de tam olarak bu!
Başlangıç: Django’yu Kurmak ve İlk Projeyi Başlatmak
Django ile başlamak oldukça kolay. İlk olarak, Django'yu kurmamız gerekiyor. Eğer Python yüklü değilse, Python’u kurarak başlayabilirsiniz.
Aşağıdaki adımlarla Django’yu kurabilirsiniz:
# Python'u yükledikten sonra, Django'yu yüklemek için terminal veya komut istemcisinde:
pip install django
Kurulum tamamlandıktan sonra, ilk projemizi oluşturabiliriz:
# Projemizi oluşturmak için şu komutu kullanıyoruz:
django-admin startproject myfirstproject
Bu komut, "myfirstproject" adında yeni bir proje klasörü oluşturacaktır. Proje klasörünün içinde "settings.py", "urls.py" gibi temel yapı taşları yer alır.
İlk Uygulama: Web Sayfası Oluşturmak
Şimdi, Django ile ilk uygulamamızı geliştirelim. Django, projelerin içinde birden fazla uygulama barındırabilmenizi sağlar. İlk uygulamamızı eklemek için aşağıdaki komutları takip edebiliriz:
# Uygulamayı eklemek için:
python manage.py startapp myfirstapp
Yeni bir uygulama oluşturduktan sonra, "myfirstapp" adlı dizin içinde gerekli dosyalar otomatik olarak oluşturulacaktır. Şimdi bu uygulamayı projeye dahil edelim. Bunun için "settings.py" dosyasını açın ve "INSTALLED_APPS" kısmına uygulamanızı ekleyin:
INSTALLED_APPS = [
'myfirstapp',
# Diğer uygulamalar
]
Uygulama ve URL Yönlendirmeleri
Şimdi ise, uygulamamızda bir URL yönlendirmesi oluşturacağız. Django’da URL’leri yönlendirmek için "urls.py" dosyasını kullanıyoruz. İlk başta uygulamamız için bir view (görünüm) fonksiyonu oluşturmalıyız.
Aşağıdaki gibi basit bir view fonksiyonu yazabiliriz:
# myfirstapp/views.py dosyasına şu kodu ekleyin:
from django.http import HttpResponse
def home(request):
return HttpResponse("Hoşgeldiniz! Django ile Web Uygulaması Geliştiriyorsunuz!
")
Sonrasında, bu view’i URLs dosyasına yönlendirelim:
# myfirstapp/urls.py dosyasına şu kodu ekleyin:
from django.urls import path
from . import views
urlpatterns = [
path('', views.home, name='home'),
]
Ve son olarak, ana proje klasöründeki "urls.py" dosyasına bu URL’yi dahil edelim:
# myfirstproject/urls.py dosyasına şu kodu ekleyin:
from django.contrib import admin
from django.urls import path, include
urlpatterns = [
path('admin/', admin.site.urls),
path('', include('myfirstapp.urls')),
]
Artık "http://127.0.0.1:8000/" adresine gittiğinizde, basit bir "Hoşgeldiniz!" mesajı görmelisiniz.
Veritabanı ve Modeller
Django'nun güçlü özelliklerinden biri de veritabanı işlemlerini çok kolay hale getirmesidir. Django ile veri modelleme için "models.py" dosyasını kullanıyoruz. Örnek olarak, basit bir blog uygulaması için bir model oluşturalım:
# myfirstapp/models.py dosyasına şu kodu ekleyin:
from django.db import models
class Post(models.Model):
title = models.CharField(max_length=200)
content = models.TextField()
created_at = models.DateTimeField(auto_now_add=True)
def __str__(self):
return self.title
Bu model, başlık, içerik ve oluşturulma tarihi gibi verileri tutacaktır. Veritabanına bu modelin uygulanması için şu komutları kullanabiliriz:
# Veritabanı migrasyonu yapmak için:
python manage.py makemigrations
python manage.py migrate
İleri Düzey: Django Admin Paneli ve Özelleştirme
Django, geliştirdiğiniz uygulamanın yönetimi için güçlü bir admin paneli sunar. Admin panelini kullanmak için, önce süper kullanıcı (admin) oluşturmanız gerekir:
# Süper kullanıcı oluşturmak için:
python manage.py createsuperuser
Daha sonra, uygulamanızda tanımladığınız modelleri admin panelinde görmek ve yönetmek için şu şekilde özelleştirme yapabilirsiniz:
# myfirstapp/admin.py dosyasına şu kodu ekleyin:
from django.contrib import admin
from .models import Post
admin.site.register(Post)
Bu işlemden sonra, admin paneline giriş yaparak, blog yazılarınızı kolayca yönetebilirsiniz.
Sonuç: Django ile Web Uygulaması Geliştirme Yolculuğu
Django, güçlü ve esnek bir framework olup, web uygulamaları geliştirmek için harika bir seçimdir. Başlangıç seviyesinden ileri düzeye kadar, Django'nun sunduğu tüm özellikler sayesinde, güvenli, hızlı ve ölçeklenebilir projeler oluşturabilirsiniz.
Eğer sıfırdan başlıyorsanız, Django’nun belgeleri ve topluluğu size her adımda yardımcı olacaktır. Bu rehberde, temel adımlarla web uygulamanızı nasıl başlatacağınızı, geliştireceğinizi ve özelleştireceğinizi gösterdik.
Unutmayın, Django ile geliştirdiğiniz projeler zamanla daha da büyüyebilir ve genişleyebilir. Bu yazının sadece bir başlangıç olduğunu unutmayın ve daha fazla özelleştirme ve geliştirme yapmak için keşfe devam edin!
---