This document provides an overview of the Viewflow library, which is a reusable workflow library for Django applications. It discusses key aspects of Viewflow including flows, models, nodes, views, jobs, gates, activation, parallel task execution, error handling, and Viewsite for building user interfaces. Viewflow is designed to help separate CRUD operations from workflow logic and provides out-of-the-box support for Celery and other job queues to run tasks asynchronously. It aims to make it easy to build and grow business applications that involve people collaboration through workflows.
11. Parallel task execution and Joins
Task Token
Split Node adds suffix
Join Node waits all nodes
with common prefix
Short pessimistic locks
@flow_view
@flow_job
Optimistic lock with django-fsm on Task
OR If your are ok with fails
Concurrent updates are rare, but:
12. Error handling
View Jobs
Any exception in subsequent task activation
would rollback whole transaction.
View task still available for user second try
Job results committed immediately as job
completes.
Any exception in subsequent tasks activations
would save subsequent task in error state.
Could be customized by providing custom Activation class
13. Viewsite
Completely optional, but you will like it
Admin like speed for interface development
Works with your Views
Ready for end user
Forms layouts, dynamic formsets, bootstrap
More in next videos...
14. Thank you
$ pip install django-viewflow
http://viewflow.io
http://github.com/kmmbvnr/django-viewflow/
kmmbvnr@gmail.com