0

我在 Gentics Mesh 中使用外部 BPM 进行内容批准,并且内容节点可能处于多种状态之一。

要求是查询所有没有状态或具有特定状态的内容节点。
由于我们没有节点上的字段级别权限,我不想在内容模式中定义“状态”字段。

我正在考虑使用系统仅具有“创建”权限 的模式将状态存储为内容项的子节点。

这是一个好方法吗?

否则我想我会使用外部数据库进行状态管理,但这会使系统更加复杂。

--更新--

有关用例的更多信息:
我们有将上传媒体的内容贡献者。内容需要由编辑审阅,并且将被接受或拒绝并发表评论。
目前这是一个简单的工作流程,但需求可能会发生变化,因此我们希望利用完整的 BPM。[我们还有其他 BPM 工作流程]。
因此,状态数据将包含状态标识符 + 注释 + 未来可能还有其他任意数据。

我们正在构建一个 Mesh 插件,它将使用/生成 Kafka 消息以与外部系统(如 BPM)进行交互。

我们还需要管理通知,编辑器将看到一个显示未读通知数量的图标,并有一个“收件箱”来查看历史通知[听起来类似于“必读插件”]
我们有一个“用户配置文件”架构,我正在考虑将通知添加为那里的节点。

4

1 回答 1

1

您可以使用标签来模拟节点的状态。然而,标签不会是特定于语言、版本或分支的。除此之外,我认为这可能是产品增强的一个有效点。

有关详细信息,请参阅https://github.com/gentics/mesh-incubator/issues/187

在大多数其他需要对这种状态进行建模的情况下,我们构建了跟踪状态的插件。在这些情况下,状态数据保存在插件管理的额外节点中。

想到的一个例子是必须读取的插件,它存储了“节点已被用户 xyz 读取”状态。它将创建专用节点,将这些信息存储在由插件 ( /must-read/:nodeUuid-:userUuid) 管理的文件夹中。这些节点将具有 urlField 值,可以非常快速地加载,因此可以非常有效地完成检查。

您能否在提到的票证中描述您的实际用例。我认为这将有助于我们规划工作流功能。谢谢你。

于 2019-09-21T21:59:15.237 回答