Django çerçevesindeki projelerin ve uygulamaların rolleri ve işlevleri hakkında güçlü bir anlayış geliştirin.

Django'da bir web uygulaması oluşturmak için iki ana bileşen kullanabilirsiniz; uygulamalar ve projeler. Django web çerçevesinde farklı anlamlara ve işlevlere sahip olmalarına rağmen, geliştiriciler bazen bu terimleri birbirinin yerine kullanırlar.

Django Projelerini Anlamak

Django'da bir proje, web uygulamanız için üst düzey bir kapsayıcıdır. Bir proje, web uygulamanız için yapılandırmaları ve her biri web uygulamanız için belirli bir dizi işlevsellik veya özellik sağlayan bir veya daha fazla uygulama içerir. Ayrıca, farklı uygulamaları arasında paylaşılan tüm bileşenleri içerir. Bir Django projesinde, Django komut satırı yardımcı programı ve Django geliştirme sunucusu gibi web uygulamanızı yönetmeyi kolaylaştıran araçlar ve yardımcı programlar bulabilirsiniz.

Bir Django Projesinin Bileşenleri

Bir Django projesi genellikle farklı uygulamalar ve web uygulamanızın yapılandırmalarını içerir. Yeni bir proje oluşturduğunuzda, Django bu yapılandırmaları içeren dosyaları otomatik olarak oluşturur. Bir Django projesinde yer alan bileşenler şunlardır:

instagram viewer

  1. Ayarlar: Ayarlar modülü, projeniz için gereken yapılandırmaları ve projenizdeki bireysel uygulamaları içerir. Bu modül öncelikle veritabanı bağlantısı, ara yazılım, yüklü uygulama, izin verilen ana bilgisayarlar ve web uygulamanızın çalışması için gereken diğer yapılandırmalar gibi yapılandırma seçeneklerini içerir.
  2. URL'ler: URL modülü, uygulamanız için bir URL modeli tanımlar. Projenizdeki her bir URL kalıbı, uygulamanızdaki başka bir URL kalıbına veya doğrudan belirli URL'ye yönelik isteği işleyen bir görüntüleme işlevine eşlenebilir. URL modeli, uygulamanızdaki bir görüntüleme işleviyle veya başka bir URL modeliyle eşleşsin, nihai hedef, onu, isteği etkili bir şekilde işleyen bir görünüme eşlemektir.
  3. WSGI: WSGI (Web Sunucusu Ağ Geçidi Arayüzü) modülü, web sunucuları ve uygulamaları için Python standardıdır. WSGI modülü, Django'nun çeşitli sunucularda çalışmasını mümkün kılar.
  4. ASGİ: ASGI (Eşzamansız Sunucu Ağ Geçidi Arabirimi) modülü, aşağıdakiler gibi eşzamansız istekleri işler: WebSockets bağlantıları. ASGI, asenkron web sunucularının Python web uygulamalarıyla iletişim kurması için bir standarttır.
  5. Diğer bileşenler: Bazen, uygulamanızın gereksinimlerine bağlı olarak Django projenize kendi bileşenlerinizi eklemeniz gerekebilir. Bu bileşenler statik dosyaları, şablonları, ortam dosyalarını ve özel yönetim komutlarını içerir.

Django Projesi Nasıl Oluşturulur

Bir Django projesi oluşturmak için şunu kullanmalısınız: django-yönetici komut satırı yardımcı programı. Aşağıdaki adımları izleyerek Django projenizi oluşturabilirsiniz:

  1. Komut satırı arabiriminizde, Django projenizi oluşturmak istediğiniz dizine gidin.
  2. Django'yu pip paket yöneticisi ile kurun.
    pip kurulumu django
  3. Aşağıdaki komutu yazın ve çalıştırın:
    django-admin başlangıç ​​projesi 

Yukarıdaki komut şöyle bir dizin oluşturacaktır:

Proje dizininizin adlarında bir fazlalık fark edeceksiniz, yani proje adınız iki kez görünüyor. Bundan kurtulmak istiyorsanız, çalıştırdığınız zaman bir nokta ekleyebilirsiniz. başlangıç ​​projesi şöyle bir komut:

django-admin başlangıç ​​projesi  .

Şimdi, proje yapınız şöyle görünecek:

Yukarıdaki adımlarla başarılı bir Django Projesi oluşturmuş olmalısınız. bu yönet.py projenizde oluşturulan dosya, Django projenizle etkileşim için önemlidir.

Bir Django Uygulamasını Anlamak

Bir uygulamanın amacı, Django projenize belirli işlevler sağlamaktır. Bir uygulama, projenizin işlevlerini daha küçük bileşenlere ayırarak kod tabanınızı düzenlemenize yardımcı olur.

Örneğin, bir blog projesinde, kimlik doğrulama ve yetkilendirmeye ayrılmış bir uygulamanız ve blog gönderilerine ayrılmış başka bir uygulamanız olacaktır. Projenizin özel ihtiyaçlarına göre birden çok uygulama oluşturabilirsiniz.

Bir Django Uygulamasının Bileşenleri

Bir Django uygulaması, projeyle, yani web sitenizin belirli bir özelliğiyle ilgili modüllerden oluşur. Bir projede olduğu gibi, bir uygulama oluşturduğunuzda Django otomatik olarak yararlı dosyalar oluşturur. Django tarafından oluşturulan dosyalar aşağıdakileri içerir:

  1. görünümler.py: Bu dosya, istek almak ve yanıt göndermek için gerekli tüm mantığı içerecektir. Ayrıca, kullanıcının web sitenizdeki eylemlerine göre hangi HTML şablonunun oluşturulacağını da belirler.
  2. modeller.py: Bu modül, uygulamanızın veri yapısını oluşturur ve veritabanının onu nasıl saklayacağını belirler. Verileri tanımlamak için Django'nun ORM'sini (Object-Relational Mapping) kullanır. modeller bileşeni farklı tanımlar Django'da veritabanı ilişkileri.
  3. admin.py: Yönetici modülü, Django uygulamanızın yönetim arayüzünü tanımlar. Modellerinizi yönetici dosyasına kaydetmelisiniz. Django tarafından sağlananların ötesinde ek yönetici işlevlerine ihtiyacınız varsa, bu modülde yönetici arayüzünüz için özel görünümler tanımlayabilirsiniz.
  4. urls.py: Bu dosya, belirli bir Django uygulamasına özgü URL modellerini veya yolları tanımlar. Bazen, Django bu dosyayı otomatik olarak oluşturmaz. Böyle bir durumda, onu uygulama dizininizde manuel olarak oluşturabilirsiniz.

Django, aşağıdakiler gibi başka bileşenler de üretir: apps.py Ve testler.py Bu dosyalar, uygulama yapılandırmalarınızı tanımlar ve sırasıyla birim testleri yazmanıza izin verir.

Django Uygulaması Nasıl Oluşturulur

Bir uygulama oluşturmadan önce bir proje oluşturmuş olmanız gerekir. Projenizi oluşturduktan sonra, projenizi içeren dizine gidin. yönet.py dosyasını açın ve terminalinizde aşağıdaki komutu çalıştırın:

python manager.py başlangıç ​​projesi 

Yukarıdaki komut, projenizle aynı dizin düzeyinde buna benzer bir klasör yapısı oluşturacaktır:

Django'da Bir Uygulama ile Proje Arasındaki Fark

Django'da bir proje ile bir uygulama arasında bazı belirgin farklılıklar vardır. Bunlardan bazıları aşağıda listelenmiştir.

Kodun Yeniden Kullanılabilirliği

Django'da bir uygulama, web uygulamanızın yeniden kullanılabilir bir bileşenidir. Bu, bir proje için kullanıcı kimlik doğrulamasını işleyen bir uygulamanız varsa, aynı uygulamayı çok az değişiklikle veya hiç değişiklik yapmadan başka bir projede yeniden kullanabileceğiniz anlamına gelir. Öte yandan bir proje yeniden kullanılabilir değildir. Belirli bir web uygulaması için bir proje oluşturduğunuzda, onu başka bir uygulama için kullanamazsınız.

Operasyon Kapsamı

Proje, web sitenizin genel yapılandırmasından ve yönetiminden sorumlu olduğu için uygulamadan daha yüksek bir düzeyde çalışır. Öte yandan, bir uygulama yalnızca web sitenizin belirli bir özelliğinden veya işlevinden sorumludur.

Klasör Yapısı

Bir uygulama ile bir proje arasındaki en belirgin fark, klasör yapılarıdır. Bir proje genellikle web sitenizin iyi durumda olmasından sorumlu ayarları ve diğer yapılandırma dosyalarını içerir.

Bir uygulama takip eder Django'nun MVT mimarisi. Yalnızca web sitenizin belirli bir özelliğinin iyi durumda olmasından sorumlu dosyaları ve yapılandırmaları içerir.

İyi Bir Web Uygulaması Yaratmak İçin Projeniz ve Uygulamanız Birlikte Çalışır

Projeniz ve uygulamanız benzersiz olsa da, sonuçta uygulamanızı oluştururken size sorunsuz bir deneyim sunmak için kullanılırlar. Web uygulamanızı oluşturmak ve özelleştirmek için hem proje hem de uygulama bileşenlerini birleştirebilmelisiniz. Uygulamanız ve projeniz hazır olduğunda, web sitenizi Django ile oluşturmaya başlayabilirsiniz.