Django - Veritabanı

İçindekiler
Model ve onunla ilgili her şey oluşturulduktan sonra, dikkate alınması gereken bir sonraki husus, farklı alanların veritabanı ile nasıl etkileşime girdiğidir.
Veritabanının davranışından bahsederken, verilerin saklanmaya nasıl hazırlandığını görmemiz gereken yola, veri türleri ile karşılaştırmalar yapmamıza atıfta bulunuruz. piton değerlerinin uygulamamızda temsil edildiği Django.
db_type (kendi kendine, bağlantı)
Bu yöntem, uygulama sınıfları ve alt sınıfları tarafından nadiren geçersiz kılınır, belirli alanların sütunlarının nasıl oluşturulduğunu kontrol eden belirli veritabanı verilerini içeren bir dize döndürür.
Bu yöntemle döndürülen değerin, arka uç uygulamada kullanılan veritabanı, bu nedenle farklı veritabanı arka uçlarına sahip projelerde kullanmaya karar verirsek, bağlantı değerini kullanarak bağlantının değerini elde etmeliyiz. bağlantı.settings_dict ['MOTOR']
Bu yöntemin temel kullanımını koda nasıl çevirebileceğimizi aşağıdaki resimde görelim:

Kodu analiz ederken, veritabanı motorunun postgreSQL gibi başka bir motor olduğundan farklı olarak alan için bir değer döndüreceğiz. MySQL, böylece bu yöntemin kullanışlılığının küçük bir örneğini görebiliriz.
get_prep_value (öz, değer)
Bu, verileri veritabanı tarafından kullanılmak üzere hazırlaması gereken diğer yöntemler için temel teşkil eden bir yöntemdir.
Çoğu durumda, dönüştürülmesi piton nesneleri veritabanına aktarılabilen daha basit verilere büyük bir sorun oluşturmaz ve standart dönüştürmeyi kullanabiliriz, ancak tarih türü gibi daha karmaşık dönüştürmeler yapmak istediğimizde bu işi halletmek için bu yöntemi kullanabiliriz, Aşağıdaki grafikte, tarif ettiğimiz bunu başarmanın bir yolu var.

Örnekte bir alan türü tanımlanırken SüreAlan yöntemin üzerine yazıyoruz get_prep_value () böylece tarih nesnesini alıp ondalık değerlere dönüştürür ve daha fazla karmaşıklık olmadan veritabanında kullanabilmek için.
get_db_prep_value (öz, değer, bağlantı, hazırlanmış = Yanlış)
Uygulamamızın birden fazla veritabanı motorunda çalıştığı durumlar vardır, bunun için bu yöntem, verileri motor bazında hazırlamamızı sağlar. bağlantı.settings_dict ['MOTOR'] motora bağlı olarak farklı durumları dahil edebiliriz.
Bir örnek, postgreSQL ile çalıştığımızda, bu motor doğrudan tarih nesnelerini işleyebilir, bu yüzden eğer onun olduğunu tespit edersek, değeri doğrudan iletebiliriz, aşağıdaki örnekte bu yöntemi ve bir öncekini nasıl birleştirdiğimizi görelim. daha sağlam bir sonuç elde etmek:

Bununla, veritabanının davranışını kontrol edebileceğimizi bilerek öğreticiyi bitiriyoruz. Django Bir modelin alanlarının verilerini hazırlama yöntemlerini kullanma.Bu Eğitimi beğendiniz ve yardım ettiniz mi?Yazara olumlu puan vermek için bu düğmeye basarak yazarı ödüllendirebilirsiniz.
wave wave wave wave wave