Plone的工作流
工作流是完成一项任务的业务流程。比如,写博客时,先保存草稿,待修改满意再发布。这个简单的工作流有两个状态:草稿,发布。有一个转换:从草稿状态到发布状态。在草稿状态时,只有博主能够查看,修改,同时可以随时发布。在发布状态,博主可以更新,删除,任何人都可以浏览。
从上面的例子可以看出,工作流由两部分组成:状态和转换。 而每个状态下又包括不同用户的访问权限控制。
其实工作流可以看做是一个状态转移图。
Plone中的对象操作链就是由工作流管理的。关联工作流到特定的内容类型是由portal_workflow管理的。它包含了protal的工作流的定义。
在Plone里,当创建一个内容对象后,它的状态是“保密”,同时在下拉菜单里会看到两个转换:“发布”,“提交发布”。选择“提交发布”后,状态就变成“待审”,或者选择“发布”,状态就变成“已发布”。这是Plone的默认工作流。
要查看或修改Plone的工作流,在Plone控制面板中选择“类型”,可以看到当前的默认工作流是简单发布工作流(simple publication workflow)。
简单发布工作流
简单发布工作流有三个状态:- 保密(private)
 - 待审(pending)
 - 已发布(published)
 
- 提交(submit)
 - 发布(publish)
 - 打回(reject)
 - 召回(retrac)
 
其他工作流简介
在“新的工作流”下拉菜单里可以选择使用其他工作流。 Plone还提供了5种工作流:- 文件夹社区工作流(folder_workflow)
 - 文件夹内部工作流(intranet_folder_workflow)
 - 内外网工作流(intranet_workflow)
 - 单一状态工作流(one_state_workflow)
 - 社区工作流(plone_workflow)
 
文件夹社区工作流
有三个状态:- 公开草案(visible)
 - 保密(private)
 - 已发布(published)
 
- 隐藏(hide)
 - 发布(publish)
 - 召回(retract)
 - 变为草案(show)
 
文件夹内部工作流
文件夹内部工作流比较简单,只有两种状态,通常和内外网工作流一起使用:- 内部草案(internal)
 - 保密(private)
 
- 隐藏(hide)
 - 内部显示(show_internally)
 
内外网工作流
内外网工作流比较复杂,有5种状态:- 内部草案(internal)
 - 保密(private)
 - 待审(pending)
 - 内部发布(internally_published)
 - 公开(external)
 
- 隐藏(hide) 成员使其变为保密
 - 公开发布(publish_externally) 审核者使外部可见
 - 内部发布(publish_internally) 审核者内网发布
 - 驳回(reject) 打回
 - 收回(retract) 收回提交
 - 内部显示(show_internally) 转到内部草案状态
 - 提交(submit) 提交送审
 
单一状态工作流
故名思议,只有一种状态:- 已发布(published)
 
社区工作流
社区工作流,又叫Plone工作流,有四个状态:- 公开草案(visible)
 - 保密(private)
 - 待审(pending)
 - 已发布(published)
 
- 隐藏(hide)
 - 发布(publish)
 - 驳回(reject)
 - 召回(retract)
 - 变为草案(show)
 - 提交(submit)