A django app enabling Django models to use xworkflows.
Project description
Use XWorkflows along with Django models.
Django-XWorkflows allow to bind a Django model to a workflow, with a few extra features:
- Auto-save after transitions
- Log each action into the database
Define a workflow and add it to a model:
from django import models from django_xworkflows import models as xwf_models class MyWorkflow(xwf_models.Workflow): states = ( ('new', _(u"New")), ('old', _(u"Old")), ) transitions = ( ('get_old', 'new', 'old'), ) initial_state = 'new' class MyModel(xwf_models.WorkflowEnabled, models.Model): state = xwf_models.StateField(MyWorkflow)
Use the workflow:
>>> obj = MyModel() >>> obj.state # Defaults to the initial_state State('new') >>> # Perform a transition >>> obj.get_old() >>> obj.state State('old') >>> # Object was saved to the database >>> obj.pk 1 >>> # Logs were saved to the database >>> xwf_models.TransitionLog.objects.all() [TransitionLog(MyModel: new -> old at 2012-04-14T12:10:00+0200)]
Links
- Package on PyPI: http://pypi.python.org/pypi/django-xworkflows
- Repository and issues on GitHub: http://github.com/rbarrois/django_xworkflows
- Doc on https://django-xworkflows.readthedocs.io/
- XWorkflows on GitHub: http://github.com/rbarrois/xworkflows
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
django_xworkflows-1.0.0.tar.gz
(15.3 kB
view hashes)
Built Distribution
Close
Hashes for django_xworkflows-1.0.0-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | dc7c68e786b5392abf556f6dcd7182e947f77d1a964043868d4d8615fdd760e4 |
|
MD5 | b8d3fd9eeb129941e52f13a875e22422 |
|
BLAKE2-256 | 46288fa4acad62e6951ad102f639f776e4e7e20033787d805fd0d031672886d6 |