Django - Görünümleri ve URL'leri Çözümleme

İçindekiler
Görünümler ve URL'ler kodumuz tarafından doğrudan çağrılmaz, bu, uygulamaların dinamik yapısından kaynaklanır, bunun nedeni, form ne kadar genel olursa, onu daha birçok durumda kullanmak mümkündür.
Bu yüzden doğru yol, bir görünümden bir URL'ye veya bir URL'den bir görünüme giden yolları çözmemize izin veren çeşitli işlevleri kullanmaktır, bunun için adı verilen bazı araçlarımız var. dekoratörler.
URL'den Görünümlere Çözümleme
NS Görüntüleme, önerilen uygulamalar tarafından doğrudan kodumuz tarafından çağrılmaz, bunun yerine URL'deki çağrılar aracılığıyla çağrılır, bu çağrılar, şirketin sevk sistemi tarafından işlenir ve sunulur. Django.
Bu noktada kilit noktalardan biri, Django düzenli ifadeler kullanır görüşümüzü çağıracak URL'nin yapımını yapmak için, bu sayede farklı parametreler geçirebilir ve böylece görünümlerimize işlevler ekleyebiliriz.
A url kalıbı aşağıdaki yönleri içerir:
  • Kalıp olarak yerleştirdiğimiz URL'yi yakalamamızı sağlayan normal ifade.
  • Çağrılacak görünüme bir referans.
  • Görünüm her çağrıldığında iletilecek bir argüman sözlüğü.
  • Görünümün ters çağrılarını yapabilmek için referans olarak kullanılacak bir isim.
Görünümleri URL'lere Çözümleme
Uygulamalarımızda birçok kez URL aracılığıyla diğer görünümleri veya kaynakları çağırmak zorundayız, ancak söz konusu URL'leri katı bir şekilde kopyalamak veya sabit kodlamak iyi bir uygulama değildir, çünkü örneğin programımızda bir değişiklik olursa, 20 veya 30 referansı değiştirmek zorunda olduğumuzu düşünün. Bir URL, bunun için uygulamamızın URL'yi kopyalamak zorunda kalmadan aramasını sağlamak için farklı yöntemler kullanabiliriz, bu yöntemlerden biri Kalıcı bağlantı dekoratörü bir sonraki noktada görebileceğimiz.
Kalıcı bağlantı dekoratörü
Her modelde yönteme erişimimiz var get_absolute_url() bu, URL'nin nasıl oluşturulacağını bilmeden doğrudan bir nesnenin ayrıntı sayfasına erişmemize izin verir, ancak bu yöntem yalnızca döndürülen bir bağlantı olduğu için argümanları iletmemize izin vermez.
İşlevselliği genişletmek için parametreleri get_absolute_url() yöntemindenmiş gibi kullanma ve döndürme olanağına sahibiz.
Bunu yapmak için aşağıdaki yapıyı izlemelisiniz:
  • NS ilk değer çağrılacak görünümün adıdır, görünümün bir adı varsa kullanılmalıdır, aksi takdirde kullanabiliriz ithalat yolu Görüş mesafesinde. Bu değer her zaman gereklidir.
  • NS ikinci değer Görünüme uygulanması gereken bir dizi konumsal argümandır, değilse bu parametreyi boş bırakabiliriz.
  • NS üçüncü değer argümanları ilgili değerleriyle birleştiren bir sözlüktür, bu değerler görünüme iletilmelidir, görünümün herhangi bir şey almaması durumunda bu değeri çağrıdan hariç tutabiliriz.
Şimdi bunu bir koda nasıl çevireceğimizi görelim. Django, bunun için kullanımını dahil edeceğiz dekoratör bir modelde:

Görseldeki kodda gördüğümüz gibi view diyoruz. kitaplık_makalesi detay, ikinci değeri gerekli olmadığı için boş olarak geçiyoruz ve üçüncü değerde belirtiyoruz ki Nesne Kimliği bağlı olmalı öz.kimlik yani, modelin kendisinin kimliğine, sonra son satırda dekoratör.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