.
anyit.djattributes Django dokunmadan herhangi bir model için keyfi özelliklerini sağlamayı amaçlamaktadır uygulaması & nbsp; kazanılan esneklik yoğun verilerle büyük ölçekli uygulamalarda belirgin hale gelecektir kayıp hızı ile ödenir.
Boşluğu Zihin
Ben bu konuda biraz endişe felsefe django değil uyumlu olmak değilim. Eğer büyük ölçekli olmayan seyrek veri şeyler için bu kullanmayın emin olun. Ben sadece keyfi, yol bağımlı özelliklerini içeren bir ağaç yapısı ile rahatsız oldu. Ben yaptım nedeni budur. Ben bu kaçınılması olabilirdi Eğer benim modeller daha çivilenmiş vardı.
Kurulum :
& Nbsp; Sadece geçerli django projesi nitelikleri klasöre kopyalayın ve ayarları 'nitelikleri' yer alıyor.
& Nbsp; Ya sudo easy_install anyit.djattributes kullanarak yüklemek ve 'anyit.djattributes.attributes' yer alıyor.
Kullanım :
Bir javascript / gösterimde gibi JQuery uygulanan ve basit bir arayüz sınıfı olarak adlandırılan attr tarafından sağlanmaktadır. Her zamanki sınıf isimlerinin gibi hiçbir harf o JQuery gibi hissediyorum yapmaya çalışıyorum.
Tip arayüzler
& Nbsp; attr.create_type (adı, tanımı, tip) # tipi oluşturur. Türleri konusunda daha fazla bilgi için __doc__ bakmak ve bunların nasıl temsil edilmektedir. Şimdi internal_types int, float, string, metin, unicode, sınıf (herhangi pickleable nesne) ve contentType tarafından (Django gereric tuşunu kullanarak).
& Nbsp; attr.delete_type (isim) # Dikkatli! çağlayan (değil taşıyıcı!) tüm değerleri yok edecek verilen Çeşidi.
Taşıyıcı arayüzleri
& Nbsp; attr (sahibi) # verilen sahibi özniteliklerin listesini dönecektir.
& Nbsp; attr (sahibi, isim) # sahipleri verilen ad veya Hiçbiri ile nitelik dönecektir.
& Nbsp; attr (sahibi, isim, değer) # ... değerini ayarlamak veya tip Koscher değilse kaldırın.
& Nbsp; attr (sahibi, isim, değer, create_attributetype, create_attribut, klass, açıklama) # create_attributetype verilen isimde bir attributetype oluşturma arasında seçer verilen değere ve verilen isim olarak ayarlanmış açıklama ile belirlenen tip bir açıklama explicitely değilse Resim. create_attribute henüz verilmiş ya da NameError yükseltmek bir öznitelik türü benzerleri ile bağlı olmayan bir taşıyıcı ile verilen bir özellik ilişkilendirir. klass bir örneği verilir bile, nitelik, bir modele bağlı olmak zorlamak için seçer.
Arayüzleri Özellik
& Nbsp; attr.find (nitelik) # verilen bir özelliğin sahibi dönecektir
& Nbsp; attr.find (isim) # verilen isim nitelik türü için özniteliklerin listesini dönecektir
& Nbsp; attr.find (isim, değer) # değerini eşleşen verilen isim nitelik türü için özniteliklerin listesini dönecektir
Yıkıcı arayüzler
& Nbsp; attr.delete () # tüm özelliklerini silecektir
& Nbsp; attr.delete (isim) # verilen tipine sahip tüm özelliklerini silecektir.
& Nbsp; attr.delete (nesne) # tüm özellikler verilen nesne veya sınıfa bağlı olmak silecektir
Bu sürümdeki yeni Nedir:
.
- liste argüman olarak geçirilen eğer (o) bjects eklendi toplu işlem.
- (n) ames'ait hangi eğer olacak (dict argüman olarak geçirilen varsa) atamak veya (liste) birden özelliklerini retreive. eklendi toplu işlem
- noktalar kullanarak iç içe dict elemanlarının retreivel (.). Gibi Eklenen ad
Gereksinimleri :
- Python
- Django
Yorum Bulunamadı