【问题标题】:django viewflow - StartFunction not assigning task owner infodjango viewflow - StartFunction 未分配任务所有者信息
【发布时间】:2018-04-14 14:34:24
【问题描述】:

关注How to create a django ViewFlow process programmatically提供的答案

但是它没有在激活记录中分配(或持久化)所有者信息。

@flow_start_view
def start_process(request):
    request.activation.prepare(request.POST or None,)
    request.activation.flow_task.owner = request.user
    request.activation.flow_task.task_title = "Start Process"

也在下面尝试过,它导致错误“'ManagedStartViewActivation' object has no attribute 'assign'”

 @flow_start_view
 def start_process(request):
     request.activation.prepare(request.POST or None,)
     request.activation.assign(request.user)
     request.activation.flow_task.task_title = "Start Process"

【问题讨论】:

    标签: django django-viewflow


    【解决方案1】:

    这很难理解你将要实现什么。 @start_flow_view 是 Django 视图的装饰器。这意味着该进程由用户通过浏览器手动启动。

    StartActivation 类有 ho assign 方法。

    http://docs.viewflow.io/viewflow_core_activation.html#viewflow.activation.StartActivation

    分配任务意味着防止现有任务被其他用户执行。数据库中不存在启动任务实例。每个新的启动视图调用都会创建新的流程实例,并以新的启动任务实例启动。

    如果需要跟踪执行启动任务的用户,可以直接用用户实例初始化启动激活

    self.activation.prepare(request.POST or None, user=request.user)
    

    或者只使用 viewflow StartFlowMixin作为基于类的视图。

    【讨论】:

    • 非常感谢。目的是跟踪执行启动任务的用户
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-01-04
    • 1970-01-01
    • 2020-12-26
    • 1970-01-01
    • 1970-01-01
    • 2011-03-17
    • 1970-01-01
    相关资源
    最近更新 更多