anyit.djattributes adalah aplikasi Django yang bertujuan untuk memberikan atribut sewenang-wenang untuk model apapun tanpa menyentuhnya & nbsp;. Fleksibilitas memenangkan dibayar dengan kecepatan yang hilang, yang akan menjadi jelas dalam aplikasi skala besar dengan data yang padat.
Pikiran kesenjangan
Saya sedikit khawatir tentang ini menjadi tidak sesuai untuk Django filsafat. Pastikan Anda tidak menggunakan ini untuk non hal data yang jarang skala besar. Aku hanya peduli dengan struktur pohon yang mengandung sewenang-wenang, jalan atribut tergantung. Ini adalah mengapa saya melakukannya. Jika saya bisa menghindari ini saya memiliki model saya lebih dipaku.
Instalasi :
& Nbsp; Hanya menyalin folder atribut untuk proyek Django Anda saat ini dan termasuk 'atribut' dalam pengaturan Anda.
& Nbsp; Atau menginstalnya menggunakan sudo easy_install anyit.djattributes dan termasuk 'anyit.djattributes.attributes'.
Penggunaan :
Sebuah javascript / JQuery seperti notasi dilaksanakan dan disediakan oleh kelas antarmuka yang sederhana yang disebut attr. Tidak ada huruf kapital seperti di classnames biasa mencoba untuk membuatnya merasa seperti JQuery.
Jenis antarmuka
& Nbsp; attr.create_type (nama, deskripsi, jenis) # Menciptakan tipe. Lihatlah __doc__ untuk info lebih lanjut tentang jenis dan bagaimana mereka diwakili. Dengan sekarang internal_types int, float, string, teks, unicode, kelas (objek pickleable) dan contenttype (menggunakan Django kunci gereric).
& Nbsp; attr.delete_type (nama) # Hati-hati! Kaskade akan menghancurkan nilai-nilai (bukan pembawa!) Dengan tipe ini.
Interface pembawa
& Nbsp; attr (pemilik) # Akan kembali daftar atribut bagi pemilik diberikan.
& Nbsp; attr (pemilik, nama) # Akan kembali pemilik atribut dengan nama yang diberikan atau Tidak ada.
& Nbsp; attr (pemilik, nama, nilai) # ... set nilainya atau meningkatkan jika jenis tersebut tidak Koscher.
& Nbsp; attr (pemilik, nama, nilai, create_attributetype, create_attribut, klass, deskripsi) # create_attributetype memilih antara menciptakan attributetype dengan nama yang diberikan, jenis ditentukan oleh nilai yang diberikan dan deskripsi ditetapkan untuk nama yang diberikan jika keterangan tidak secara eksplisit disediakan. create_attribute akan mengasosiasikan atribut diberikan dengan operator yang belum terpasang dengan jenis atribut seperti yang diberikan atau meningkatkan NameError a. klass memilih untuk menegakkan atribut yang melekat pada model, bahkan jika sebuah contoh yang diberikan.
Atribut antarmuka
& Nbsp; attr.find (atribut) # Akan kembali pemilik atribut yang diberikan
& Nbsp; attr.find (nama) # Akan kembali daftar atribut untuk jenis atribut nama yang diberikan
& Nbsp; attr.find (nama, nilai) # Akan kembali daftar atribut untuk jenis atribut nama yang diberikan cocok nilai
Interface Merusak
& Nbsp; attr.delete () # akan menghapus semua atribut
& Nbsp; attr.delete (nama) # akan menghapus semua atribut yang memiliki jenis tertentu.
& Nbsp; attr.delete (objek) # akan menghapus semua atribut yang melekat pada objek tertentu atau kelas
Apa yang baru dalam rilis ini:
.
- Ditambahkan batch processing untuk (o) bjects jika disahkan sebagai argumen daftar.
- Ditambahkan batch processing untuk (n) ames jika yang akan menetapkan (jika disahkan sebagai argumen dict) atau Pengambilan (daftar) beberapa atribut.
- Ditambahkan namespace seperti retreivel elemen dict bersarang menggunakan titik (.).
Persyaratan :
- Python
- Django
Komentar tidak ditemukan