Kolibri adalah aplikasi Django dapat digunakan kembali untuk merancang dan melaksanakan proses asynchronous dan alur kerja & nbsp;. Alur kerja adalah koleksi dari langkah-langkah dalam urutan yang ditetapkan, pengolahan data dalam setiap langkah. Langkah A dapat mematahkan aliran jika eksepsi dimunculkan dan / atau langkah tertentu dapat dilaksanakan untuk menangani pengecualian tertentu. Kolibri menggunakan seledri untuk menangani pengolahan di latar belakang. Semua prosesor dan alur kerja hanya dapat dimulai oleh anggota staf, tetapi kontrol akses berbutir lebih halus mungkin diimplementasikan dalam versi masa depan.
Proyek ini mendapat dimulai karena saya perlu untuk mengontrol bagaimana saya menambahkan konten ke proyek foto saya berkembang di Django. Proyek ini melibatkan banyak proses berat seperti generasi thumbnail dan pengolahan metadata. Menambahkan konten terdiri dari langkah-langkah yang perlu dilakukan dalam urutan tertentu, dan saya perlu untuk mengontrol tindakan apa yang harus diambil jika satu langkah melempar pengecualian. Saya menggunakan seledri, tetapi menambahkan langkah baru atau proses itu membosankan dan saya ingin cara yang lebih dinamis mendefinisikan dan mengelola prosesor.
Implementasi saat ini tidak stabil dan bukti dari konsep. Komentar sangat menyambut, terutama tentang bagaimana memantau status proses seledri dan memberikan umpan balik kepada pengguna.
Instalasi
pip menginstal Django-Kolibri
atau
hg clone https://bitbucket.org/weholt/django-kolibri python setup.py menginstal
& Nbsp; mengatur STATIC_ROOT dan STATIC_URL di settings.py
& Nbsp; menambahkan 'Kolibri' untuk aplikasi diinstal Anda
& Nbsp; menambahkan url (r '^ Kolibri /', termasuk ('kolibri.urls')), untuk urls.py Anda
Akan pintar untuk membaca usage.txt pertama untuk tutorial yang lebih rinci atau percobaan dengan contoh proyek kerja yang di sumber, tersedia di bitbucket
Fitur :.
- proses asynchronous, yang dapat memproses barang / querysets atau menjalankan proses tidak berhubungan dengan model tertentu atau contoh (mengirim email, scanning filesystem dll)
- menghubungkan beberapa prosesor ke dalam alur kerja, dengan penanganan eksepsi, langkah bersih-bersih dan antarmuka fasih opsional
- tag template untuk menangani pelaksanaan prosesor / alur kerja untuk item atau queryset di template Anda
- admin integrasi tindakan untuk model Anda
- dashboard daftar prosesor berjalan
- konsep prosesor tertunda dan sejarah dari apa yang telah diproses sehingga Anda tidak mengeksekusi processesors perlu atau alur kerja
- prosesor eksklusif pengguna sehingga pengguna dapat mengeksekusi dua prosesor yang sama pada waktu yang sama tanpa menyentuh data yang sama
- logging dan sejarah, dengan link langsung ke contoh diproses
- integrasi ajax menggunakan jquery
Apa yang baru dalam rilis ini:
- Dukungan untuk input pengguna. Lihat bagian bawah deskripsi penggunaan untuk info lebih lanjut.
Apa yang baru di versi 0.1.1 Alpha:
- Ditambahkan dukungan untuk hanya menjalankan prosesor sekali untuk sebuah contoh.
Persyaratan :
- Python
- Django
- seledri
- Django-seledri
Komentar tidak ditemukan