0

我有两种票证类型“新”和“更新”,每种都有不同的工作流程。如何在 trac.ini 文件中实现,如果修改了工单类型,工作流也会更改以匹配类型。无论“错误”工作流中的当前阶段如何,在更新时都应将其修改为工作流的第一阶段。使用 trac 版本 0.12.3

4

1 回答 1

1

序言:将工单类型命名为“新”并不是最明智的主意,因为这会与工单状态“新”相冲突,因此相当令人困惑——你明白吗?

您的要求听起来很合理,但我仍然不知道任何可以实现这一点的配置。默认情况下,Trac 提供保持无效票证状态不变修复它。所以如果不改变现有的 Trac 核心代码,或者安装一个 Trac 插件,几乎等同于前者,这是无法做到的。

Trac 的模块化组件架构非常适合以相当小的工作量做到这一点。总而言之,听起来ITicketManipulator接口的实现将是正确的选择。您不需要关心时间 - 它会在每次工单更改时触发 - 只需确定有趣的条件和适当的操作,并且实现“在类型更改时设置工作流开始”应该相当容易。

提示:每个 'ticket' 实例应该是一个Ticket类对象,并且在内部具有当前(可能已更改)以及旧(最后存储)值。不要再往里看trac.ticket.model,以找出如何/在哪里可以在该对象内找到它。

于 2012-08-15T18:56:12.447 回答