Django-beban modul dan objek aplikasi loader untuk Django.
Contoh
Untuk dokumentasi API lengkap, silahkan lihat http://django-load.readthedocs.org.
Mari kita asumsikan aplikasi Anda ingin memuat semua file plugins.py dari aplikasi diinstal, untuk memungkinkan aplikasi tersebut untuk memperpanjang aplikasi Anda. Anda dapat mencapai hal ini seperti ini:
dari django_load.core beban impor
load ('plugin')
Sekarang katakanlah Anda ingin melakukan hal yang sama, tetapi benar-benar melakukan sesuatu dengan modul tersebut, lebih spesifik, menemukan semua benda di modul tersebut, yang subclass dari BasePlugin dan memanggil fungsi do_something kami dengan benda-benda:
dari django_load.core impor iterload
untuk modul di iterload ('plugin'):
& Nbsp; untuk nama di dir (modul):
& Nbsp; obj = getattr (modul, nama)
& Nbsp; jika issubclass (obj, BasePlugin):
& Nbsp; do_something (obj)
Anda juga bisa memiliki pengaturan yang disebut MY_APP_PLUGINS yang berisi jalur impor mirip dengan MIDDLEWARE_CLASSES. Anda ingin memuat mereka plugin dan memanggil fungsi do_something dengan mereka:
dari django_load.core iterload_objects impor
dari django.conf pengaturan impor
untuk obj di iterload_object (settings.MY_APP_PLUGINS):
& Nbsp; do_something (obj)
Jika Anda hanya ingin memuat satu objek, Anda dapat melakukannya juga. Katakanlah Anda ingin memuat MyObject dari modul mypackage.mymodule:
dari django_load.core impor load_object
obj = load_object ('mypackage.mymodule.MyObject')
Fitur :
- Muat semua modul dari semua aplikasi diinstal dengan diberi nama.
- Load semua modul dari semua aplikasi yang diinstal dengan nama yang diberikan dan iterate atas mereka.
- Muat objek dari modul menggunakan kelas middleware seperti jalan impor.
- Unittested (lihat http://ci.django-cms.org/job/django-load/)
- terdokumentasi (lihat http://django-load.readthedocs.org)
Persyaratan :
- Python
- Django
Komentar tidak ditemukan