2015-12-03 35 views
1

要創建過程驗證,我使用「Django-Viewflow」庫(http://viewflow.io/)實現工作流。如何在Django-Viewflow過程中包含For循環

當我將每個任務分配給具有固定數量驗證級別的特定驗證器(用戶)時,所有工作都很好。

我的問題是:

如何使用這個庫時驗證的變化dinamically數(n驗證水平)?

1-選擇驗證器(1,2,3或n驗證器)。

2-在「flows.py」中使用for循環執行n個驗證任務。

如何將for循環包含在文件「flows.py」中?

我flows.py:(有一個驗證級別)

from viewflow import flow, lock 
from viewflow.base import this, Flow 
from viewflow.contrib import celery 

from viewflow.views import ProcessView, StartProcessView 
from viewflow.lock import select_for_update_lock 
from django.contrib.auth import get_user_model 

from django.http import HttpResponseRedirect 
from django.shortcuts import render_to_response 
from . import models, tasks, views 

class CongeFlow(Flow): 
    process_cls = models.CongeProcess 
    lock_impl = select_for_update_lock  

    start = flow.Start(views.startProcess) \ 
     .Next(this.assign) \ 

    assign = flow.View(views.approve_conge) \ 
     .Assign(lambda p: get_user_model().objects.get(id=p.validator1)) \ 
     .Next(this.check_refuse) 

    check_refuse = flow.If(cond=lambda p: p.refuser) \ 
     .OnTrue(this.end) \ 
     .OnFalse(this.check_approve) 

    check_approve = flow.If(cond=lambda p: p.valider) \ 
     .OnTrue(this.end) \ 
     .OnFalse(this.assign) 

    end = flow.End() 

回答

相關問題