Skip to main content

A django app enabling Django models to use xworkflows. Compatible with django 3

Project description

https://secure.travis-ci.org/rbarrois/django_xworkflows.png?branch=master Latest Version Supported Python versions Wheel status License

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)]

Project details


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_3-0.12.3.1.tar.gz (17.3 kB view details)

Uploaded Source

Built Distribution

django_xworkflows_3-0.12.3.1-py2.py3-none-any.whl (17.5 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file django_xworkflows_3-0.12.3.1.tar.gz.

File metadata

  • Download URL: django_xworkflows_3-0.12.3.1.tar.gz
  • Upload date:
  • Size: 17.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/3.7.5

File hashes

Hashes for django_xworkflows_3-0.12.3.1.tar.gz
Algorithm Hash digest
SHA256 6bf53fa5f30b8aaf689d07b6bee4cd4a3447a8565189cb2861c6eeb762a5867c
MD5 da23317fd25f6f01436c3600b608f4e8
BLAKE2b-256 71b972c71dfde9ecfb354f1d66cc9a3c3a6f33d0b846f4dd129dc35a067e67af

See more details on using hashes here.

File details

Details for the file django_xworkflows_3-0.12.3.1-py2.py3-none-any.whl.

File metadata

  • Download URL: django_xworkflows_3-0.12.3.1-py2.py3-none-any.whl
  • Upload date:
  • Size: 17.5 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/3.7.5

File hashes

Hashes for django_xworkflows_3-0.12.3.1-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 4abbdb9cd8167577146347b2af30319585525dd34e7ccadd782c8e0d7d9331ac
MD5 a835be7e8ae421cbb58b654b048b8c8c
BLAKE2b-256 2e63ab5b2cc347af1e6b7496166dcdd6dcd66dc3f5f0c840b57553ad23c430ea

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page