Pardus 21 kullanıyor ve Python Django kütüphanesini sisteminize kurmak ve kütüphaneyi öğrenmeye başlamak istiyorsanız; bu yazı tam da sizin için yazıldı.

Öncelikle, Python Django Kütüphanesiyle ilgili bu yazı hazırlanırken kullanılan Linux komutlarıyla ilgili detaylı bilgi için Linux Komutlarına Giriş yazısını okumanızı tavsiye ederim. Ardından, Pardus 21’de Python geliştirme ortamının nasıl kurulabileceğini anlattığım Pardus 21’de VSCode ile Python Geliştirme Ortamının Hazırlanması yazısını da inceleyebilirsiniz.

Sözü daha fazla uzatmadan sistemimize Python paket yöneticisi olarak kullanılan pip (Package Installer for Python) aracının kurulumu ile başlayalım. İleride de değineceğimiz üzere bu araç ile sistemimize Django kütüphanesini kuracağız.

Aşağıdaki komut ile pip aracını sistemimize kurarak işe başlıyoruz:

sudo apt install python3-pip

Ardından, Pardus 21’de VSCode ile Python Geliştirme Ortamının Hazırlanması yazısında da bahsettiğimiz ve Python ile geliştirme yaparken işlerimizi epey kolaylaştıran, uygulamalar arasında oluşabilecek ortam karışıklıklarının önüne geçen Python Venv’i (Sanal Ortam) Pardus 21’e kurmamız gerekiyor. 

Şu komut ile kurulumu gerçekleştiriyoruz:

sudo apt install python3-venv

Sistemimizde, şimdilik, genel olarak bir Python geliştirmesi yapabilmek için gerekli araçları böylece kurmuş olduk. Şimdi sıra bu yazının asıl konusu olan Django kütüphanesini kurmaya geldi. 

Django, Python tabanlı açık kaynak bir web geliştirme kütüphanesidir. Bu kütüphaneyle daha hızlı ve temiz bir şekilde web uygulamaları geliştirebiliyor, sistemlerimizde kullanıcılara sunabiliyoruz. Django ile yönetim paneli, form uygulamaları, kullanıcı kimlik doğrulama işlemleri gibi her web uygulamasının ihtiyacı olan servisleri hızlı ve verimli bir şekilde hayata geçirebiliyoruz.

Python Django kütüphanesinin kurulumu

Haydi gelin, Django kütüphanesini Pardus 21’e kuralım ve ilk uygulamamızı hayata geçirelim. 

Yazımızın başında birlikte sistemimize kurduğumuz pip aracı ile Django’yu kurmak istiyoruz. Aşağıdaki komutla Python paket yöneticisine bu isteğimizi kibarca iletelim.

pip install Django==4.0

İşte bu kadar basit! Gelin, “Django sistemimize doğru bir biçimde kuruldu mu?” ve “Kurulumda belirttiğimiz sürümü mü kullanıyoruz?” sorularına cevap bulmak için sürüm kontrolümüzü gerçekleştirelim.

python -m django -version

Görebildiğimiz üzere Django gayet düzgün bir biçimde Pardus 21’e kurulmuş. Şimdi gelin birlikte keşfedelim!

Öncelikle, ilk Django uygulamamızı saklayacağımız bir dizin oluşturalım. Bu dizine ilk-uygulama adını verelim. ilk-uygulama dizinine geçelim ve burada Django tarafından bizlere sağlanan ve bağlantısı kaynakçada paylaşılan projeyi başlatma komutunu çalıştıralım. Bu komutun bizler için ne sağladığına az sonra değineceğiz. 

mkdir ilk-uygulama
cd ilk-uygulama/
django-admin startproject mysite

Son komutu çalıştırdıktan sonra herhangi bir uçbirim çıktısı beklemiyoruz.

Pekâla, çalıştırdığımız Django komutu ne işe yarıyor?

Django bizlere projelerimiz üzerinde yönetimsel komutları çalıştırabilmemiz için django-admin komutunu çalıştırmamızı sağlıyor. Bu komut satırı uygulaması sayesinde projelerimiz için kullanabileceğimiz komutları şu komut ile listeleyebiliriz:

django-admin help -commands

Birlikte çalıştırdığımız komutun hâlâ bir çıktısı olup olmadığını veya varsa bile nerede, ne iş yaptığına bakmadık. Gelin, ilk-uygulama dizininde neler olduğunu bir görelim.

ls komutu ile mysite adında bir dosya daha listeliyoruz. mysite değişkeni sanki birlikte çalıştırdığımız şu komutta vardı:

django-admin startproject mysite

Demek ki, bu komut bizim için mysite adında bir proje dizini oluşturmuş. Pekâla bu dizine geçip bu dizinde neler olduğuna da bir bakalım mı? Yukarıdaki ekran görüntüsünde sizler için bu dizine geçmiş ve listelemiştim. Görebildiğimiz kadarıyla bir Python betiği ve yine mysite adında bir dizine sahibiz. Bu iki içeriği de biz oluşturmamıştık, değil mi?

manage.py adındaki Python betiğine birazdan değineceğiz ama önce bu dizindeki mysite neler içeriyor bunu bir görelim istiyorum.

Beş farklı Python betiği görüyoruz ve hiçbirinin içeriği hakkında en ufak fikrimiz yok. Bu his şu an için gayet doğal. Bu betikler Django uygulamamızın temelini oluşturuyor. URL ayarları ve web servisimizin tüm ayarlarını belirttiğimiz betiklerden oluşuyor. Bu Python betiklerinin içerikleri ve özellikleri bir başka yazının konusu olabilir!

Görebildiğimiz kadarıyla, Django bizler için startproject komutu için birçok farklı dosya oluşturmuş ve kullanıma hazır hale getirmiş. Bu dosyaların kullanım şeklini yerel ortamımızda bir Django uygulaması olarak görüntülemek hoş olmaz mıydı?

Gelin, tekrar ilk-uygulama/mysite dizinine geçelim. pwd komutu ile olduğumuz dizini görüntüleyelim. Ardından aşağıdaki komutu çalıştırarak Python ile manage.py betiğine bağımlı olarak bir web sunucusu çalıştırmak istediğimizi söyleyelim.

python3 manage.py runserver

Böylece, Django kütüphanesini kullanarak ilk web sunucumuzu ayağa kaldırmış olduk!

Django version 4.0, using settings 'mysite.settings' çıktısı biraz önce incelediğimiz ilk-uygulama/mysite/mysite dizinindeki settings.py betiği ile ilgili olabilir mi sizce? 

Geliştirme sunucumuzun http://127.0.0.1:8000/ adresinde oluşturulduğunu görebiliyoruz. Yani, localhost olarak isimlendirilen adresin 8000 portunda yayına alındığını ve sadece bizim görüntüleyebileceğimizi belirtiyor.

Yukarıdaki sunucuyu bir süreliğine unutalım ve arkaplanda çalışsın. Bir internet tarayıcısı açalım ve bizlere belirtilen adrese gidelim.

Tebrikler! Django kurulumumuz ve sunucuyu ayağa kaldırmak için çalıştırdığımız komutlar gayet sorunsuz bir şekilde çalışıyor.

Bu durumu tarayıcı dışında görüntüleyebileceğimiz bir yer daha var. Sizce neresi?

Elbette biraz önce arka planda çalışmaya bıraktığımız uçbirimimiz. Bir bakalım mı?

http://127.0.0.1:8000/ adresine yapılan HTTP isteklerinin olağan bir biçimde ve 200 yani “bağlantı başarılı” kodu ile logların sunucumuza ulaştığını görebiliyoruz!

Böylece, Django kütüphanesiyle sadece birkaç komut kullanarak bir geliştirme sunucusunu ayağa kaldırabildiğimizi deneyimledik. Django bizler için katmanlı bir dosya yapısı hazırladı ve bu dosya yapısını da ihtiyaçlarımıza göre düzenleyebilmemiz için gerekli kurulum ayarlarını gerçekleştirdi. 

Daha sonrasında ise birkaç komut çalıştırarak yaptığımız veya yapacağımız herhangi bir geliştirmeyi üzerinde çalıştığımız sistemde görüntüleme olanağına sahip oluyoruz. Python ve Django kütüphanesi ile aşinalığınız arttıkça yapabileceklerinizin sınırları da genişleyecek demek, pek de yanlış olmaz diye düşünüyorum.

Django kütüphanesi hakkında daha detaylı bilgi ve belgeler için Django web sitesini ziyaret edebilir ve Pardus 21’de Python ile Django kütüphanesini kullanarak geliştirme yapmaya başlayabilirsiniz.