我想使用collective.easytemplate生成模板化電子郵件(適用於內容規則)。但是,我不確定它是否可以輸出對象工作流程狀態。任何人都知道這是否可能,以及它是如何完成的?在collective.easytemplate中訪問對象的工作流程狀態
謝謝。
我想使用collective.easytemplate生成模板化電子郵件(適用於內容規則)。但是,我不確定它是否可以輸出對象工作流程狀態。任何人都知道這是否可能,以及它是如何完成的?在collective.easytemplate中訪問對象的工作流程狀態
謝謝。
您可以,有可能,一種方法是使用portal_workflow工具,例如,從parts/omelette/plone/app/contentrules/tests/test_action_workflow.py
:
self.assertEquals('published',
self.portal.portal_workflow.getInfoFor(self.folder.d1, 'review_state'))
更一般地,是這樣的:
context.portal_workflow.getInfoFor(context, 'review_state')
在一個頁面模板應該工作。或者如Spanky所建議的那樣使用portal_catalog。如果「OBJ」是目錄「大腦」(即從目錄搜索的結果集的一部分),那麼:
obj.review_state
應該工作。
謝謝aclark。這和我上面發現和提到的完全一樣。我在模板化的電子郵件中使用了{{context.portal_workflow.getInfoFor(context,'review_state')}}。 – h2o 2012-02-23 03:13:17
portal_catalog還具有工作流審閱狀態的索引,因此如果您尚未擁有正在處理的對象(例如上下文≠對象),則可以使用該目錄查找該對象並獲取從產生的「大腦」對象審查狀態。
顯然也有ALSO瀏覽器視圖方法可供您使用,並且我注意到其中之一是workflow_state。請參閱:
http://plone.org/documentation/manual/theme-reference/page/otherinfo
請在你的問題:你曾試圖尋找答案的方式,要求對計算器 – aclark 2012-02-22 18:27:49
很抱歉,我真的在黑暗中摸索,因爲我不熟悉Plone的API之前。更多谷歌指向我這個代碼{{here.portal_workflow.getInfoFor(here,'review_state')}}我剛剛用上下文替換了它,它工作。但是,我得到了國家的標識而不是標題。任何人都知道如何獲得審查狀態標題,而不是ID? – h2o 2012-02-23 03:06:11