Django Kurulumu ve Geliştirme Ortamı Kurulumu: Ubuntu 22.04 Rehberi
Web geliştirme dünyasında hızla yükselen, güçlü ve verimli bir çerçeve olan Django, Python dilinin gücünü arkasına alarak karmaşık web uygulamalarının kısa sürede geliştirilmesine olanak tanır. “Pilleri dahil” felsefesiyle yola çıkan Django, geliştiricilerin tekrar eden görevlerle uğraşmak yerine uygulamanın özüne odaklanmasını sağlayan birçok hazır bileşen sunar. Bu makalede, popüler ve kararlı bir işletim sistemi olan Ubuntu 22.04 üzerinde Django’yu nasıl kuracağınızı ve temel bir geliştirme ortamını nasıl oluşturacağınızı adım adım detaylı bir şekilde inceleyeceğiz.
Django’nun sunduğu avantajlar arasında güçlü bir ORM (Object-Relational Mapper), otomatik yönetici paneli, kimlik doğrulama sistemi, URL yönlendirme, şablonlama motoru ve güvenlik mekanizmaları bulunur. Tüm bu özellikler, büyük ölçekli ve güvenli web uygulamaları oluşturmak için sağlam bir temel sağlar. Ubuntu 22.04 ise uzun süreli desteği (LTS) ve geniş topluluk desteği sayesinde sunucu ortamlarında ve geliştirme makinelerinde sıkça tercih edilen bir dağıtımdır. Bu kombinasyon, geliştiriciler için verimli ve stabil bir ortam sunar.
Bu rehberde, Ubuntu 22.04 sisteminizi güncel tutmaktan, Python ve sanal ortamları kurmaya, Django’yu yüklemeye, ilk projenizi ve uygulamanızı oluşturmaya kadar tüm adımları kapsamlı bir şekilde ele alacağız. Amacımız, hem yeni başlayanlar hem de deneyimli geliştiriciler için net, anlaşılır ve uygulanabilir bir yol haritası sunmaktır.
Ön Gereksinimler ve Sistem Güncelleme
Django geliştirme ortamınızı kurmaya başlamadan önce, sisteminizin güncel olduğundan ve temel gereksinimleri karşıladığından emin olmalıyız. Bu, olası uyumluluk sorunlarını önlemek ve en yeni güvenlik güncellemelerine sahip olmak için kritik bir adımdır.
Ubuntu 22.04 Sistem Gereksinimleri
* İşletim Sistemi: Ubuntu 22.04 (Jammy Jellyfish) kurulu bir sistem.
* Kullanıcı Hakları: sudo ayrıcalıklarına sahip bir kullanıcı hesabı.
* İnternet Bağlantısı: Paketleri indirmek ve kurmak için aktif bir internet bağlantısı.
* Temel Terminal Bilgisi: Linux komut satırı arayüzünü kullanma yeteneği.
Sistem Paketlerini Güncelleme
İlk adım olarak, sisteminizdeki paket listesini güncelleyip mevcut paketleri yükseltmek önemlidir. Bu, en son güvenlik yamalarını ve yazılım sürümlerini almanızı sağlar. Terminali açın (Ctrl+Alt+T) ve aşağıdaki komutları çalıştırın:
sudo apt update
sudo apt upgrade -y
* sudo apt update: Bu komut, yerel paket dizininizi Ubuntu depolarındaki en son paket bilgileriyle senkronize eder. Böylece sisteminiz, hangi paketlerin güncel sürümlerinin mevcut olduğunu bilir.
* sudo apt upgrade -y: Bu komut, update komutuyla güncellenen paket listesine göre mevcut tüm kurulu paketlerinizi en yeni sürümlerine yükseltir. -y bayrağı, tüm sorulara otomatik olarak “evet” yanıtı vererek yükseltme işlemini etkileşimli olmadan tamamlamanızı sağlar.
Bu işlemlerin tamamlanması biraz zaman alabilir. İşlem bittikten sonra, sisteminiz Django kurulumu için hazır hale gelmiş olacaktır.
Python ve Pip Kurulumu
Django bir Python web çerçevesi olduğu için, sistemimizde Python’ın ve Python paket yöneticisi olan Pip’in kurulu olması şarttır. Ubuntu 22.04, çoğu Linux dağıtımında olduğu gibi, varsayılan olarak Python 3 ile birlikte gelir. Ancak, Pip ve sanal ortamlar için gerekli ek araçların kurulu olduğundan emin olmalıyız.
Python Sürümünü Kontrol Etme
Terminalde aşağıdaki komutu çalıştırarak Python 3 sürümünü kontrol edebilirsiniz:
python3 --version
Çıktı genellikle Python 3.10.x gibi bir şey olacaktır. Django, Python’ın en son sürümleriyle uyumlu olacak şekilde sürekli güncellenir. Ubuntu 22.04 ile gelen Python 3.10 sürümü, çoğu Django projesi için fazlasıyla yeterlidir.
Pip ve Sanal Ortam Araçlarını Kurma
Pip (Python Package Index), Python paketlerini yüklemek ve yönetmek için kullanılan standart bir araçtır. Ayrıca, projeler arası bağımlılık çakışmalarını önlemek için sanal ortamlar oluşturmamızı sağlayan python3-venv paketini de kurmamız gerekiyor.
sudo apt install python3-pip python3-venv -y
* python3-pip: Bu paket, Python 3 için Pip’i kurar. Bu sayede Django gibi üçüncü taraf Python kütüphanelerini kolayca yükleyebiliriz.
* python3-venv: Bu paket, Python’ın sanal ortamlar oluşturma yeteneğini sağlar. Sanal ortamlar, farklı projeler için bağımsız Python ortamları oluşturarak bağımlılık çakışmalarını önler.
Kurulum tamamlandıktan sonra, Pip’in doğru şekilde kurulduğunu doğrulamak için sürümünü kontrol edebilirsiniz:
pip3 --version
Çıktı, Pip’in kurulu sürümünü gösterecektir. Artık Python ve Pip başarıyla sisteminize kurulmuş durumda.
Sanal Ortam Kurulumu
Sanal ortamlar (virtual environments), Python projeleri geliştirirken vazgeçilmez bir araçtır. Her projenin kendi bağımlılıklarına sahip olmasını sağlayarak, farklı projelerdeki paket sürümlerinin çakışmasını engeller. Örneğin, bir projeniz Django 3 kullanırken, başka bir projeniz Django 4 kullanabilir. Sanal ortamlar sayesinde bu iki proje, sisteminize kurulu genel Python paketlerini etkilemeden bağımsız olarak çalışabilir.
Neden Sanal Ortam Kullanmalıyız?
* Bağımlılık İzolasyonu: Her proje kendi bağımlılıklarına sahip olur, bu da global Python ortamını temiz tutar.
* Versiyon Çakışmalarını Önleme: Farklı projelerin farklı paket versiyonlarına ihtiyaç duyması durumunda sorun yaşanmaz.
* Temiz ve Taşınabilir Ortam: Projenizi başka bir geliştiriciye veya sunucuya taşırken, yalnızca requirements.txt dosyasını paylaşarak tüm bağımlılıkları kolayca kurmasını sağlayabilirsiniz.
Proje Dizini Oluşturma
Öncelikle, Django projeniz için bir ana dizin oluşturalım ve bu dizine geçelim. Bu dizin, tüm projenizin ve sanal ortamınızın ana kapsayıcısı olacaktır.
mkdir my_django_project
cd my_django_project
Burada my_django_project yerine projenizin adını yansıtan daha anlamlı bir isim kullanabilirsiniz.
Sanal Ortam Oluşturma
Şimdi, oluşturduğumuz proje dizininin içinde bir sanal ortam oluşturalım. Genellikle sanal ortam dizinine venv veya env gibi isimler verilir.
python3 -m venv venv
* python3 -m venv: Bu komut, Python’ın venv modülünü kullanarak bir sanal ortam oluşturur.
* venv: Bu, sanal ortamın oluşturulacağı dizinin adıdır.
Bu komut, my_django_project dizininin içinde venv adında yeni bir dizin oluşturacaktır. Bu dizin, Python yorumlayıcısının bir kopyasını ve Pip’i içerir.
Sanal Ortamı Etkinleştirme
Sanal ortamı oluşturduktan sonra, onu etkinleştirmeniz gerekir. Etkinleştirildiğinde, terminalinizde gördüğünüz prompt (komut istemi) değişecek ve sanal ortamın adını gösterecektir (örneğin, (venv)).
source venv/bin/activate
Sanal ortamınız etkinleştirildiğinde, terminaliniz aşağıdaki gibi görünecektir:
(venv) user@hostname:~/my_django_project$
Bu, artık sanal ortamınızın aktif olduğunu ve kuracağınız tüm Python paketlerinin (Django dahil) bu sanal ortama yükleneceğini gösterir.
Sanal Ortamı Devre Dışı Bırakma
Geliştirme işiniz bittiğinde veya başka bir projeye geçmek istediğinizde sanal ortamı devre dışı bırakabilirsiniz.
deactivate
Bu komut, sanal ortamı devre dışı bırakır ve terminal prompt’unuz normal haline döner. Yeni bir oturum başlattığınızda veya terminali kapatıp tekrar açtığınızda sanal ortam otomatik olarak devre dışı kalır ve onu tekrar etkinleştirmeniz gerekir.
Django Kurulumu
Sanal ortamımızı başarıyla kurup etkinleştirdiğimize göre, şimdi Django’yu bu sanal ortamın içine kurabiliriz.
Django Paketini Yükleme
Sanal ortamınızın etkin olduğundan emin olun (prompt’ta (venv) gördüğünüzden). Ardından, aşağıdaki komutu kullanarak Django’yu Pip aracılığıyla yükleyin:
(venv) pip install Django
Bu komut, Django’nun en son kararlı sürümünü indirip sanal ortamınıza kuracaktır. Kurulum işlemi, internet hızınıza bağlı olarak birkaç saniye sürebilir.
Django Kurulumunu Doğrulama
Django’nun başarılı bir şekilde kurulduğunu doğrulamak için, django-admin komutunun sürümünü kontrol edebilirsiniz:
(venv) django-admin --version
Çıktı, kurulu Django sürümünü gösterecektir (örneğin, 4.2.7). Bu, Django’nun sanal ortamınızda düzgün çalıştığını teyit eder.
İlk Django Projenizi Oluşturma
Django başarıyla kurulduktan sonra, ilk projenizi oluşturmaya hazırsınız. Django projeleri, bir veya daha fazla “uygulama” (app) içerebilen bir web sitesi veya web hizmeti için bir yapılandırma ve ayar koleksiyonudur.
Django Projesi Oluşturma Komutu
my_django_project dizininizde (ve sanal ortamınız etkin durumdayken) aşağıdaki komutu çalıştırın:
(venv) django-admin startproject mysite .
* django-admin startproject mysite: Bu komut, mysite adında yeni bir Django projesi oluşturur. mysite, projenizin ana yapılandırma dizini olacaktır.
* . (nokta): Bu, Django’ya projenin mevcut dizinde (yani my_django_project içinde) oluşturulmasını söyler. Eğer bu noktayı kullanmazsanız, Django my_django_project içinde mysite adında başka bir dizin oluşturur ve projeniz my_django_project/mysite/mysite gibi iç içe geçmiş bir yapıya sahip olur. Tek bir ana dizin altında çalışmak genellikle daha pratiktir.
Bu komutu çalıştırdıktan sonra, my_django_project dizininizin yapısı aşağıdaki gibi görünecektir:
my_django_project/
├── venv/
├── manage.py
└── mysite/
├── __init__.py
├── asgi.py
├── settings.py
├── urls.py
└── wsgi.py
Proje Dosyalarını Anlama
* manage.py: Bu, Django projenizle etkileşim kurmak için kullanılan bir komut satırı yardımcı programıdır. Veritabanı geçişleri yapmak, geliştirme sunucusunu çalıştırmak, yeni uygulamalar oluşturmak ve daha fazlası için bu dosyayı kullanacaksınız.
* mysite/ (içteki dizin): Bu, projenizin ana Python paketidir. Adı, startproject komutuyla verdiğiniz isimdir. İçindeki dosyalar şunlardır:
* __init__.py: Bu dosya, mysite dizininin bir Python paketi olduğunu belirtir.
* settings.py: Projenizin tüm ayarlarını (veritabanı yapılandırması, yüklü uygulamalar, statik dosyalar vb.) içerir.
* urls.py: Projenizin ana URL bildirimlerini içerir. Gelen isteklerin hangi görünümlere yönlendirileceğini burada tanımlarsınız.
* wsgi.py: WSGI (Web Server Gateway Interface) uyumlu web sunucularının projenizi sunmasına yardımcı olan bir giriş noktasıdır.
* asgi.py: ASGI (Asynchronous Server Gateway Interface) uyumlu web sunucularının asenkron (gerçek zamanlı) özelliklere sahip projenizi sunmasına yardımcı olan bir giriş noktasıdır.
Veritabanı Geçişleri ve Süper Kullanıcı Oluşturma
Her yeni Django projesi, kullanıcı kimlik doğrulama, yönetici paneli ve oturum yönetimi gibi bazı yerleşik uygulamalarla birlikte gelir. Bu uygulamaların çalışması için veritabanında gerekli tabloların oluşturulması gerekir. Django, bu tabloları oluşturmak için “geçişler” (migrations) adı verilen bir sistem kullanır.
Veritabanı Geçişlerini Uygulama
Projenizin kök dizininde (yani manage.py dosyasının bulunduğu yerde) aşağıdaki komutu çalıştırın:
(venv) python manage.py migrate
* python manage.py migrate: Bu komut, settings.py dosyasında tanımlanan veritabanında (varsayılan olarak SQLite) Django’nun yerleşik uygulamaları için gerekli tabloları oluşturur. Komutu çalıştırdığınızda, birçok Applying ... mesajı göreceksiniz. Bu, Django’nun farklı uygulamalar için geçişleri uyguladığını gösterir.
Süper Kullanıcı Oluşturma
Django’nun en güçlü özelliklerinden biri de otomatik olarak oluşturulan yönetici paneli (Django Admin) dir. Bu paneli kullanabilmek için bir yönetici kullanıcı (superuser) oluşturmanız gerekir.
(venv) python manage.py createsuperuser
Bu komutu çalıştırdıktan sonra, sizden sırasıyla bir kullanıcı adı, e-posta adresi (isteğe bağlı) ve iki kez parola girmeniz istenecektir. Güçlü bir parola seçtiğinizden emin olun.
Username (leave blank to use 'user'): admin
Email address: admin@example.com
Password:
Password (again):
Superuser created successfully.
Bu süper kullanıcı, Django yönetici paneline giriş yapmak ve veritabanındaki modellerinizi yönetmek için kullanılacaktır.
Geliştirme Sunucusunu Çalıştırma
Django, geliştirme sırasında projenizi test etmek için hafif bir web sunucusuyla birlikte gelir. Bu sunucu, üretim ortamı için tasarlanmamıştır ancak yerel geliştirme için mükemmeldir.
Geliştirme Sunucusunu Başlatma
Projenizin kök dizininde (yani manage.py dosyasının bulunduğu yerde) aşağıdaki komutu çalıştırın:
(venv) python manage.py runserver
Komutu çalıştırdığınızda, terminalde aşağıdaki gibi bir çıktı göreceksiniz:
Watching for file changes with StatReloader
Performing system checks...
System check identified no issues (0 silenced).
You have 18 unapplied migration(s). Your project may not work properly until you apply the migrations for app(s): admin, auth, contenttypes, sessions.
Run 'python manage.py migrate' to apply them.
November 24, 2023 - 14:30:00
Django version 4.2.7, using settings 'mysite.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.
Yukarıdaki “You have 18 unapplied migration(s)” uyarısını görmezden gelebilirsiniz, çünkü migrate komutunu zaten çalıştırmıştık. Bu uyarı genellikle yeni bir proje oluşturulduğunda veya yeni bir uygulama eklendiğinde ortaya çıkar.
Web Tarayıcınızda Görüntüleme
Şimdi bir web tarayıcısı açın ve adres çubuğuna http://127.0.0.1:8000/ yazın. Karşınıza “The install worked successfully! Congratulations!” yazan bir Django hoş geldiniz sayfası gelmelidir. Bu sayfa, Django projenizin başarılı bir şekilde çalıştığını gösterir.
Django Yönetici Paneline Erişim
Yönetici paneline erişmek için tarayıcınızda http://127.0.0.1:8000/admin/ adresine gidin. Oluşturduğunuz süper kullanıcı (admin kullanıcı adı ve parolası) ile giriş yapabilirsiniz. Giriş yaptıktan sonra, kullanıcılar, gruplar ve diğer yerleşik modelleri yönetebileceğiniz Django yönetici panelini göreceksiniz.
Geliştirme sunucusunu durdurmak için terminalde Ctrl+C tuş kombinasyonuna basmanız yeterlidir.
İlk Django Uygulamanızı Oluşturma
Django’da projeler, bir veya daha fazla “uygulama”dan oluşur. Uygulamalar, bir projenin belirli bir işlevini yerine getiren modüler bileşenlerdir. Örneğin, bir blog projesinde blog uygulaması, comments uygulaması veya users uygulaması olabilir. Uygulamalar, bağımsız ve yeniden kullanılabilir olacak şekilde tasarlanmıştır.
Uygulama Oluşturma Komutu
Projenizin kök dizininde (yani manage.py dosyasının bulunduğu yerde ve sanal ortamınız etkin durumdayken) aşağıdaki komutu çalıştırın:
(venv) python manage.py startapp myapp
* python manage.py startapp myapp: Bu komut, myapp adında yeni bir Django uygulaması oluşturur.
Bu komutu çalıştırdıktan sonra, my_django_project dizininizin yapısı aşağıdaki gibi güncellenecektir:
my_django_project/
├── venv/
├── manage.py
├── mysite/
│ ├── ...
└── myapp/
├── __init__.py
├── admin.py
├── apps.py
├── migrations/
│ └── __init__.py
├── models.py
├── tests.py
└── views.py
Uygulama Dosyalarını Anlama
* myapp/: Uygulamanızın ana dizini.
* admin.py: Django yönetici paneli için model kayıtlarını tanımladığınız yer.
* apps.py: Uygulama yapılandırmasını içerir.
* models.py: Veritabanı modellerinizi (veri yapılarınızı) tanımladığınız yer.
* views.py: Uygulamanızın mantığını ve gelen HTTP isteklerine nasıl yanıt vereceğini tanımladığınız yer.
* migrations/: Uygulamanızın veritabanı şema değişikliklerini izleyen dosyaları içerir.
* tests.py: Uygulamanız için otomatik testler yazdığınız yer.
Uygulamayı Projeye Kaydetme
Oluşturduğunuz yeni uygulamayı Django projenizin tanıması için mysite/settings.py dosyasında INSTALLED_APPS listesine eklemeniz gerekir.
mysite/settings.py dosyasını bir metin düzenleyiciyle açın ve INSTALLED_APPS bölümünü bulun. myapp uygulamasını bu listeye ekleyin:
# mysite/settings.py
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'myapp', # Yeni uygulamanızı buraya ekleyin
]
Bu adımı tamamladıktan sonra, projeniz artık myapp uygulamasından haberdar olacaktır.
Temel Bir Görünüm (View) ve URL Oluşturma
Şimdi, myapp içinde basit bir görünüm (view) oluşturalım ve bu görünümü bir URL ile eşleştirelim.
Görünüm Oluşturma
myapp/views.py dosyasını açın ve içeriğini aşağıdaki gibi değiştirin:
# myapp/views.py
from django.http import HttpResponse
def index(request):
return HttpResponse("Merhaba, bu benim ilk Django uygulamam!")
* from django.http import HttpResponse: HttpResponse sınıfını içe aktarırız. Bu, tarayıcıya geri gönderilecek metin veya HTML gibi bir yanıt oluşturmak için kullanılır.
* def index(request):: index adında bir fonksiyon tanımlarız. Django görünümleri her zaman ilk argüman olarak bir request nesnesi alır.
* return HttpResponse(...): Bu fonksiyon, tarayıcıya “Merhaba, bu benim ilk Django uygulamam!” metnini içeren basit bir HTTP yanıtı döndürür.
Uygulama URL’lerini Tanımlama
Her uygulamanın kendi urls.py dosyasına sahip olması iyi bir uygulamadır. Bu, projenizin URL yapısını modüler hale getirir.
myapp dizininin içinde urls.py adında yeni bir dosya oluşturun:
touch myapp/urls.py
myapp/urls.py dosyasını açın ve içeriğini aşağıdaki gibi ekleyin:
# myapp/urls.py
from django.urls import path
from . import views
urlpatterns = [
path('', views.index, name='index'),
]
* from django.urls import path: URL kalıplarını tanımlamak için path fonksiyonunu içe aktarırız.
* from . import views: Mevcut dizinden (myapp dizini) views.py dosyasını içe aktarırız.
* urlpatterns = [...]: Bu liste, uygulamanızın URL kalıplarını içerir.
* path('', views.index, name='index'): Bu satır, boş bir yol ('') için (http://127.0.0.1:8000/myapp/ gibi bir adresin sonu) views.index fonksiyonunu çağıracağını belirtir. name='index' ise bu URL’ye programatik olarak başvurmak için bir isim atar.
Proje URL’lerine Uygulama URL’lerini Dahil Etme
Son olarak, projenizin ana urls.py dosyasına (mysite/urls.py) myapp uygulamasının URL’lerini dahil etmeniz gerekir.
mysite/urls.py dosyasını açın ve içeriğini aşağıdaki gibi değiştirin:
# mysite/urls.py
from django.contrib import admin
from django.urls import path, include # 'include' fonksiyonunu içe aktarıyoruz
urlpatterns = [
path('admin/', admin.site.urls),
path('myapp/', include('myapp.urls')), # myapp URL'lerini dahil ediyoruz
]
* from django.urls import path, include: include fonksiyonunu içe aktarırız. Bu, başka bir urls.py dosyasındaki URL kalıplarını projenizin ana URL’lerine bağlamamızı sağlar.
* path('myapp/', include('myapp.urls')): Bu satır, http://127.0.0.1:8000/myapp/ ile başlayan tüm URL’lerin myapp uygulamasının urls.py dosyasında aranacağını belirtir.
Test Etme
Geliştirme sunucusunu tekrar başlatın:
(venv) python manage.py runserver
Şimdi tarayıcınızda http://127.0.0.1:8000/myapp/ adresine gidin. “Merhaba, bu benim ilk Django uygulamam!” mesajını görmelisiniz. Tebrikler! İlk Django uygulamanızı başarıyla oluşturdunuz ve bir URL ile eşleştirdiniz.
Sonraki Adımlar ve Geliştirme İpuçları
Django geliştirme ortamınızı başarıyla kurdunuz ve ilk uygulamanızı çalıştırdınız. Bu, Django ile web geliştirme yolculuğunuzun sadece başlangıcıdır. İşte sonraki adımlar ve daha verimli bir geliştirme süreci için bazı ipuçları:
Modeller ve Veritabanı
* Modelleri Tanımlama: myapp/models.py dosyasında veritabanı modellerinizi tanımlayarak verilerinizi yapılandırın. Django’nun ORM’si (Object-Relational Mapper) sayesinde SQL yazmadan veritabanı işlemleri yapabilirsiniz.
* Geçişleri Oluşturma ve Uygulama: Modellerinizde değişiklik yaptığınızda python manage.py makemigrations ile geçiş dosyaları oluşturun ve python manage.py migrate ile veritabanına uygulayın.
Şablonlar (Templates)
* HTML Dosyaları Oluşturma: myapp/templates/myapp/ dizini altında HTML şablonları oluşturarak dinamik web sayfaları tasarlayın.
* Görünümlerden Şablonları Render Etme: django.shortcuts.render fonksiyonunu kullanarak görünümlerinizden şablonları işleyin ve bağlam verilerini (context data) şablonlara aktarın.
Statik Dosyalar
* CSS, JavaScript ve Resimler: CSS stilleri, JavaScript dosyaları ve resimler gibi statik varlıkları myapp/static/myapp/ dizininde yönetin.
* STATIC_URL ve collectstatic: settings.py dosyasındaki STATIC_URL ayarını ve üretim ortamında python manage.py collectstatic komutunu kullanarak statik dosyalarınızı toplayın.
Django Yönetici Paneli
* Modelleri Kaydetme: Uygulamanızdaki modelleri myapp/admin.py dosyasında kaydederek yönetici panelinden kolayca yönetilebilir hale getirin.
Sürüm Kontrol Sistemi (Git)
* Git Kullanımı: Projenizi bir sürüm kontrol sistemi olan Git ile yönetmek, kod değişikliklerini takip etmek, farklı özellikler üzerinde çalışmak ve ekip çalışmasını kolaylaştırmak için hayati öneme sahiptir. Projenizi bir Git deposuna (git init, git add ., git commit) eklemeyi düşünün.
İyi Uygulamalar
* requirements.txt: Sanal ortamınıza kurduğunuz tüm paketleri pip freeze > requirements.txt komutuyla bir dosyaya kaydedin. Bu, projenizi başka bir ortama taşırken veya başka bir geliştiriciyle paylaşırken bağımlılıkları kolayca kurmasını sağlar (pip install -r requirements.txt).
* Ayarların Ayrıştırılması: Geliştirme ve üretim ortamları için farklı settings.py dosyaları (veya ayarları ayrıştırma yöntemleri) kullanmak, güvenliği ve esnekliği artırır.
* Güvenlik: Django’nun yerleşik güvenlik özelliklerini (CSRF koruması, XSS koruması vb.) anlayın ve uygulamanızı güvenli hale getirmek için en iyi uygulamaları takip edin.
Daha Fazla Öğrenme Kaynakları
* Django Dokümantasyonu: Django’nun resmi dokümantasyonu (docs.djangoproject.com), her seviyeden geliştirici için en kapsamlı ve güncel kaynaktır.
* Django Girls Tutorial: Yeni başlayanlar için harika bir başlangıç noktasıdır (tutorial.djangogirls.org).
* Çevrimiçi Kurslar ve Eğitimler: Udemy, Coursera, FreeCodeCamp gibi platformlarda birçok Django kursu bulunmaktadır.
Sonuç
Bu kapsamlı rehberde, Ubuntu 22.04 işletim sistemi üzerinde Django geliştirme ortamını kurma ve ilk projenizi çalıştırma sürecini adım adım ele aldık. Sistem güncellemesinden Python ve Pip kurulumuna, sanal ortamın oluşturulmasından Django’nun yüklenmesine, ilk projenin ve uygulamanın oluşturulmasından temel bir görünüm ve URL yapısının kurulmasına kadar her aşamayı detaylandırdık.
Artık Django’nun gücünü kullanarak kendi web uygulamalarınızı geliştirmeye hazırsınız. Unutmayın ki web geliştirme, sürekli öğrenmeyi ve pratik yapmayı gerektiren bir alandır. Django’nun sunduğu geniş özellik yelpazesini keşfetmeye devam edin, modeller, şablonlar, formlar, kullanıcı kimlik doğrulaması ve daha fazlası hakkında bilgi edinin.
Bu rehber, Django yolculuğunuz için sağlam bir temel oluşturmuştur. Başarılar dileriz!