我有一个包含两个工作流程的对象。
obj.portal_workflow.getTransitionsFor(obj)
仅返回主要工作流程的转换。
我编写了以下代码,以获取列表中所有项目的所有可能转换的列表。
我好吗?
transitions = []
for i, obj in enumerate(self.items):
for w in workflow.getWorkflowsFor(obj):
for tid,t in w.transitions.items():
if w.isActionSupported(obj, tid):
if t not in transitions:
transitions.append(t)
return transitions
坎贝尔
答案 0 :(得分:2)
对于我在getTransitionsFor源代码中看到的内容,它必须返回所有工作流的所有转换。
http://svn.plone.org/svn/plone/Products.CMFPlone/tags/4.1/Products/CMFPlone/WorkflowTool.py
答案 1 :(得分:0)
你所拥有的应该工作得很好。但您可能需要考虑使用@ keul的答案中已有的方法。