Django-cms和编辑工作流程

时间:2012-01-10 16:28:05

标签: python django workflow django-cms

我需要在我的Django-CMS应用程序中实现工作流程。但是形成Django-CMS功能列表,我们可以阅读:

编辑工作流程

发布和批准的工作流程。

我试图搜索它并没有找到任何东西。我搜索了Django-CMS文档(http://docs.django-cms.org/en/latest/index.html),但也找不到任何东西。

有没有人知道Django-CMS中的工作流程(尤其是页面系统)?

2 个答案:

答案 0 :(得分:3)

2016年更新:

django CMS 3中没有编辑工作流程(尚未)

django CMS 3(截至今天的v3.3.2)没有编辑工作流程。这个功能在版本2.3中被删除,取而代之的是"简单发布" (2个版本的内容:草稿,公开)。阅读Divio的related blog post了解他们的动机。

对于版本3.5,通过插件计划了一些扩展审核支持,如2012年原始博客帖子中的explained by Angelo Dini in a current comment。不过不要打赌。

控制编辑

如果您想要的是,至少可以控制一些编辑,例如: "某些用户只能创建和编辑,但无法发布更改",那么您很幸运。它的工作原理如下:

对编辑的控制符合以下公式,它是 3件事的组合

  

"工作人员"状态+应用权限+ CMS权限

前两个是纯Django概念(来自django.contrib.auth,见Django docs),后者来自from django CMS。所有3个人一起玩,这就是为什么:

  • 没有"员工"状态根本不允许编辑,也不显示用于前端编辑的CMS工具栏。请注意,无法在组中设置此状态,必须在单个用户上设置此状态。 (d'!OH)
  • 没有分配给组(或用户直接)的所有应用程序权限(cms,djangocms-,cmsplugin-,zinnia),没有编辑;将显示CMS工具栏,您通常可以双击内容以启动编辑,但django CMS会告诉您没有权限。
  • 省略部分 CMS权限(例如,创建,发布)会禁用CMS工具栏上的按钮。这是关于它的。没有消息指示用户做什么或解释正在发生的事情(承认,这里很难提供通用解决方案),也没有发送电子邮件或其他通知(当然,没有这样的事情编辑工作流程。)。

现在,可以将用户分成小组并允许他们只做一些特定的事情(仅编辑,仅发布等),但用户通知是工作流实施的核心概念,在django CMS v3.3中不可用。

编辑:请参阅" Editorial workflow for django CMS"在django CMS开发人员G +小组中获取详细信息并演示相关实现。

答案 1 :(得分:1)

当您在Django-CMS中打开CMS_MODERATION时,您将在页面列表视图中的每个页面旁边显示三个图标。从左到右,这些控制

  • 此页面的更改是否需要主持人批准
  • 是否更改此页面的子项需要主持人批准
  • 是否更改此页面的后代需要主持人批准

创建或更改页面时,您可以将其保存,并在网站上预览页面或新版本的页面,但在页面或页面的新版本可见之前需要主持人批准最终用户。