我有两种票据类型'新'和'更新',每种票据都有不同的工作流程。如何在trac.ini文件中实现如果修改了故障单类型,则工作流也会更改为与类型匹配。无论“错误”工作流程中的当前阶段如何,都应在更新时将其修改为工作流程的第一阶段。使用trac版本0.12.3
答案 0 :(得分:1)
序言:将票据类型命名为“新”并不是最明智的想法,因为这是相当混乱的,因为它与票证状态“新”发生冲突 - 一定会让人感到困惑,你知道吗?
您的请求听起来合理,但我不知道任何配置,这可能会发生这种情况。默认情况下,Trac提供保留无效的票证状态,因为它是或修复它。因此,如果不改变现有的Trac核心代码,或安装Trac插件,几乎等同于前者,这是无法做到的。
Trac的模块化component architecture非常适合以相当小的努力做到这一点。总而言之,它听起来像ITicketManipulator接口的实现将是正确的选择。您不需要关心时间 - 它会在每个故障单更改时触发 - 只需确定有趣的条件和适当的操作,并且实现“设置工作流程开始类型更改”应该相当容易。
提示:每个'ticket'实例应该是一个Ticket
类对象,并且内部有当前(可能已更改)以及旧(最后存储)值。不要在trac.ticket.model
内查看,以了解在该对象中如何/在哪里找到它。