wftool.doActionFor不会触发内容规则

时间:2013-04-14 19:49:50

标签: plone

我设置了一个内容规则,当我通过Web界面更改dexterity对象的状态时会触发该规则,但是当我以编程方式更改状态时,不会触发内容规则。

我使用典型的workflow_tool.doActionFor来更改review_state。目录/对象中的review_state显示已更改为新状态。

任何线索??

我正在使用plone 4.2.5和dexterity 1.2.1。

这是我用来改变状态的代码:

cart = brains[0].getObject()
wftool = getToolByName(self.context, 'portal_workflow')
wftool.doActionFor(cart, 'charge')
wftool.doActionFor(cart, 'pay')
modified(cart)

1 个答案:

答案 0 :(得分:0)

最后我发现一次只触发一个转换,plone按预期触发内容规则。

因此,在我的情况下,我按以下方式设置了一种解决方法:

状态为:已创建 - > 收费 - > 付费,更改为州付费时会触发内容规则。有时我必须在一个交易中将状态从创建更改为付款。我启用了支付从状态已创建转换为绕过中间状态收费。因此,我只需要触发一次转换为支付 创建的对象,并且内容规则有效。