Kolibri ist eine wiederverwendbare Django-Applikation für den Entwurf und die Ausführung asynchrone Prozesse und Arbeitsabläufe. & Nbsp; Ein Workflow ist eine Sammlung von Schritten in einer definierten Reihenfolge, die Verarbeitung von Daten in jedem Schritt. Ein Schritt kann die Strömung zu brechen, wenn eine Ausnahme ausgelöst wird und / oder einen bestimmten Schritt kann ausgeführt werden, um eine spezifische Ausnahme behandeln. Kolibri verwendet Sellerie, um die Verarbeitung im Hintergrund zu behandeln. Alle Prozessoren und Workflows können nur von Mitarbeitern gestartet werden, aber mehr feinkörnige Zugriffssteuerung könnte in zukünftigen Versionen implementiert werden.
Das Projekt angefangen, weil ich brauchte, um zu steuern, wie ich aufgenommen Gehalt auf ein Foto-Projekt Ich entwickle in django. Das Projekt beinhaltete viele schwere Prozesse wie Thumbnails und Metadaten-Verarbeitung. Hinzufügen von Inhalten besteht aus Schritten, die in einer bestimmten Reihenfolge durchgeführt werden muss, und ich brauche, um zu steuern, welche Maßnahmen zu ergreifen, wenn ein Schritt löst eine Ausnahme. Ich war mit Sellerie, aber das Hinzufügen eines neuen Schritt oder Prozess langwierig war und ich wollte dynamischer Weg zur Definition und Verwaltung von Prozessoren.
Die aktuelle Implementierung ist nicht stabil und ein Proof of Concept. Kommentare sehr willkommen, vor allem, wie man den Status von Sellerie Prozesse zu überwachen und Rückmeldungen an den Benutzer.
Installation
pip django-kolibri installieren
oder
hg clone https://bitbucket.org/weholt/django-kolibri python setup.py installieren
& Nbsp; gesetzt STATIC_ROOT und STATIC_URL in settings.py
& Nbsp; hinzufügen "Kolibri", um die installierten Apps
& Nbsp; add url (r '^ kolibri /', include ('kolibri.urls')), um Ihre urls.py
Es wäre klug, um durch usage.txt zunächst für eine detailliertere Anleitung oder experimentieren Sie mit dem Arbeitsbeispiel Projekt in der Quelle zur Verfügung gestellt, bei bitbucket lesen
Eigenschaften .
- asynchrone Prozesse, welche Elemente / querysets verarbeiten oder Verfahren nicht auf bestimmte Modelle oder Instanzen (zum Senden per E-Mail, Scan-Dateisysteme etc) bezogen ausführen kann
- verbinden mehrere Prozessoren in Workflows, mit Ausnahmebehandlung, Reinigungsschritte und eine optionale Fluent Interface
- Template-Tags, um die Ausführung von Prozessoren / Workflows für ein Element oder queryset in Ihre Vorlagen zu behandeln
- Admin-Aktion-Integration für Ihre Modelle
- Dashboard-Verzeichnis laufen Prozessoren
- ein Konzept der anhängigen Prozessoren und eine Geschichte von dem, was wurde bearbeitet, so dass Sie unnötige processesors oder Workflows nicht ausgeführt haben
- Benutzer exklusive Prozessoren so zwei Benutzer den gleichen Prozessor zur gleichen Zeit ohne sie zu berühren die gleichen Daten ausführen
- Protokollierung und Geschichte, mit direktem Link zu bearbeitenden Fälle
- ajax Integration mit jQuery
Was ist neu in dieser Pressemitteilung:
- Unterstützung für Benutzereingaben. Siehe unten auf Nutzung Beschreibung für weitere Informationen.
Was ist neu in Version 0.1.1 Alpha:
- Unterstützung für nur einen Prozessor läuft einmal für eine Instanz.
Anforderungen :
- Python
- Django
- Sellerie
- django-Sellerie
Kommentare nicht gefunden