No project description provided
Project description
SCF_FSM_PACKAGE
A resuable python django package that can handle transition and workflow's in your django application .
Description
- The finflo package is designed to take over all the complexity in FSM building for a workflow scenario
- Your transition's are made easy with finflo
- customizable Actions and states with on_flow interchangable
Authors
Prerequisite
- python
- Django
- Django-rest-framework
1. Installation
1.1 Initial setup
- Install finflo using pip
pip install finflo
- In your django application , browse to installed_apps section in settings.py and add this ,
INSTALLED_APPS = [
'finflo',
'rest_framework'
]
- Add this in your settings.py
FINFLO = {
'WORK_MODEL' : ['MyApp.Model','MyApp2.Model2']
}
- Navigate to the middleware section in your settings.py and add the finflo middleware
MIDDLEWARE = [
'finflo.middleware.TransitionUserMiddleware',
]
- Now add this peice of code in your urls.py
urlpatterns = [
path('', include('finflo.urls'))
]
1.2 Migrations
- once all the steps done from the above section 1.1 .
- now we can apply the migrations for the database using ,
- python manage.py makemigrations
- python manage.py migrate
1.3 Re-migrate
- scenario 1 : if any new values is added to the WORK_MODEL
- example for scenario 1 :
# see 1.1
FINFLO = {
'WORK_MODEL' : ['MyApp.Model','MyApp2.Model2','MyApp3.Model3']
}
- you can remigrate the database without droping it using the below command .
- python manage.py migrate finflo 0002
Usage
-
Once your setup is completed , whenever the objects in WORK_MODEL is created , the finflo automatically creates :
- Transition manager
- workflowitems
- workevents
-
The transition for each model can be carried out with :
- t_id (transition_id)
- type (model_type)
- action
- example
-
Some important information for transition are as follows :
Arguments Data_Type type str action str t_id int source (optional) str interim (optional) str target (optional) str from_party (optional) str to_party (optional) str
Additional API's
Api urls
Api URL's | METHOD | QUERY_PARAMS |
---|---|---|
localhost/model/ | GET | ?type=PROGRAM & t_id = 1 |
localhost/action/ | GET | NONE |
localhost/action/ | POST | NONE |
localhost/workflowitems/ | GET | NONE |
localhost/workevents/ | GET | NONE |
Support
For support, email support@venzo.com .
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
finflo-1.10.27.tar.gz
(14.4 kB
view details)
Built Distribution
finflo-1.10.27-py3-none-any.whl
(19.8 kB
view details)
File details
Details for the file finflo-1.10.27.tar.gz
.
File metadata
- Download URL: finflo-1.10.27.tar.gz
- Upload date:
- Size: 14.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.8.10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3ab1425f48ade2aa2b820ff5e41fdd04e4d7deadf57ae24d4e1b0edc8b6ccfae |
|
MD5 | 5f44d52957f416e5b2ed79e589fb074a |
|
BLAKE2b-256 | 6750c4ce6ecf4175550dff483ccc1c62962982cee2e79e9e1288a7d849f740bb |
File details
Details for the file finflo-1.10.27-py3-none-any.whl
.
File metadata
- Download URL: finflo-1.10.27-py3-none-any.whl
- Upload date:
- Size: 19.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.8.10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4a3dbca7ddca5664d8f73d9c4d93f6769e1e3ff75d00a6f3a0fc8bc020ad07eb |
|
MD5 | 76d2354d145c7ec0347b4ad8c25df291 |
|
BLAKE2b-256 | 428523eed08b89dc4dbbf4ab4aef644c3f27a45d71e6991a906bee03a4869d18 |