【问题标题】:Django viewflow - create->pending->publish->edit->pending->publishDjango 视图流 - 创建->待处理->发布->编辑->待处理->发布
【发布时间】:2019-03-09 17:15:14
【问题描述】:

我正在使用 django viewflow 创建一个发布流程

  • 用户创建一个对象
  • 进入审核流程,状态为待处理(公众不可见)
  • 经过审核和批准后,它会发布并公开显示。
  • 如果用户编辑同一实体,它会再次进入审核流程,但旧数据仍对公众可见

创建和公开的部分很容易,但如果我希望旧数据仍然对公众可见,编辑部分就不那么容易了。我正在考虑取消在 pre_save 上保存对象并将其保存到流程模型中。但我没有设法让它工作。 django viewflow 如何做到这一点?有什么想法吗?

【问题讨论】:

    标签: python django django-viewflow


    【解决方案1】:

    Viewflow 是从视图中提取流逻辑的精简工作流层。保存各种数据的视图逻辑保持不变。

    要编写自定义视图,您只需添加 FlowMixin。它可以与 generic.CreateView 和 generic.UpdateView 一样使用

    Django CBV 可能看起来很复杂,如果你可以使用一个简单的基于函数的视图,只需用@flow_view 装饰器标记它。任务完成后,视图应该调用request.activation.done()

    这是几个自定义视图示例,您可以查看参考https://github.com/viewflow/cookbook/blob/master/custom_views/demo/bloodtest/views.py#L54

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-09-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-01-11
      • 1970-01-01
      相关资源
      最近更新 更多