Django - İşlev Tabanlı Görünümler

İçindekiler
Görünüm terimi bir şekilde yorumlanabilse de, Django Bu bizim onun için kullandığımız klasik bir kavram değildir, örneğin web programlamada çoğu zaman bir görünümün bize verdiği sonuç kullanıcının eylemlerine bağlıdır, belki kullanıcı bir açılır listeyi günceller ve görünümün genel anlamını değiştirir .
Görüş kavramını oluşturmaya çalıştığımızda, elde etmek istediğimiz şey, görüş kavramına sahip olduğumuzda, onu diğer MVC ortamlarından önceden tanımlamış olabileceğimiz konseptle karşılaştırmaya çalışmak değildir. Django diğer geliştiricilere daha iyi ifade edebiliriz.
Görme İskeleti
Görünümün gövdesini görür ve temellerine inersek, görünümün bir işlev olduğunu söyleyebiliriz. bir HTTP isteği al Y bir HTTP yanıtı döndürür, Bu yaklaşımın basit olduğunu söyleyebiliriz, ancak bu kavramın amacını yeterince yerine getirdiğini görürsek, şimdi bu iki unsurun sadeliğine ulaşmak için başka faaliyetlerde bulunmamız gerekiyor.
Genel Görünümler
felsefesi Django uygulamalarımızın tekrar kullanılabilir, basit ve etkili olması için elimizden gelen her şeyi yapmamız gerektiğini söylüyor bu da demek oluyor ki tekrar eden elemanlar geliştiremiyoruz yani aynı kodu tekrar tekrar yazıyoruz çünkü mantıklı gelmiyor, bakalım aşağıdaki görüntü:

Bu kodda bir fonksiyonu nasıl oluşturduğumuzu görüyoruz, bu fonksiyon bize bir bakış açısı sunuyor, ancak şu anki noktaları karşılayan bir çözüm olmaktan çok uzak. Django felsefesi, kodun çalıştığı ve çoğu durumda işi fazlasıyla iyi yapacağı doğru olsa da, büyük oranlarda bir uygulamamız olduğu için sadece bu görüşü yapmak yerine 100 veya 200 yapmamız gerektiğini hayal edelim. aynı tip kodu üreterek bu mantığı tekrar tekrar tekrarlamak zorunda kalacaktı.
Görünümün adına bakarsak, geliştirici tarafından önceden tanımlanmış bir URL'ye yönlendiren verdiği yanıt da dahil olmak üzere çağırdığı parametreler, tüm bunlar bizi belirli ve genel olmayan bir görünüme işaret eder.
Endişelenmeden önce, çerçevenin bu soruna zaten bir çözümü var ve bu, genel görünümler, bunlar zaten tanımlanmış görüşlerdir, sadece onlara bir model katıl, bir şablon belirt ve sahip olmamız gereken tüm temel bilgileri yapan işlevlere ve yöntemlere erişebiliriz.
bunların kodlarına bakalım genel görünümler aşağıdaki resimde:

Örnekte birkaç ilginç noktayı görebiliriz, önce fonksiyonu tek bir modelle sınırlandırmıyoruz, fonksiyonu nasıl kullandığımızı görüyoruz. model.get_default_manager modelimizin birincil anahtarının hangisi olduğunu belirlediğimiz, ardından ilk elde ettiğimiz şablonun adını işlevin bir argümanı olarak döndürüyoruz.
Burada artık kodla sınırlamamız yok, çünkü bu sadece bir kez yapılır ve onu içerir. Django, sadece kullanacağımız şeyi entegre etme konusunda endişelenmemiz gerekiyor, bu yaklaşımı kullanarak bir görünümün uygulamasını görelim:

Uygulamamızda sadece işlevi çağırıyoruz show_object arasında görünümler sınıfı, hangi modeli kullanacağını ve şablonun adını belirtiyoruz, başlangıçta gördüğümüz genel olmayan yaklaşımdan çok daha az tekrarlayan ve daha basit bir şey.
Gördüğümüz gibi, çerçeve içinde bizi işten kurtaran araçlarımız var ve ayrıca yazdığımız gereksiz kod satırlarının sayısını azaltarak temiz ve verimli bir geliştirme felsefesine uyabiliyoruz.Bu Eğitimi beğendiniz ve yardım ettiniz mi?Yazara olumlu puan vermek için bu düğmeye basarak yazarı ödüllendirebilirsiniz.

Arkadaşlarınızla sayfasını paylaşan sitenin gelişimine yardımcı olacak

wave wave wave wave wave