Plone/Dexterity- 如何获取对象工作流状态的 "Title"?
Plone/Dexterity- How can I get the "Title" of an object's workflow state?
我正在尝试获取对象所处工作流状态的 "title"。
我确实尝试了几件事,并且一直在获取工作流状态的 "id"。
一次尝试让我得到 id
workflow = getToolByName(self.context,'portal_workflow')
status = workflow.getStatusOf("my_workflow", my_obj)
state = status["review_state"]
print state
另一种尝试也给了我一个 id
workflow = getToolByName(self.context,'portal_workflow')
status = workflow.getInfoFor(my_obj,'review_state')
#print type(status) returns "<type 'str'>"
print status
另一次尝试:
state = api.content.get_state(obj=my_obj)
print state
如何获得州的称号?一定有一些简单的东西我想念。
我假设您想获取对象的 translated
工作流状态。
状态通常在 plone
i18n 域内翻译,所以 plone UI 正确显示你的状态。您可以使用 zope.i18n.translate
来获取翻译后的状态。
>>> workflow = getToolByName(my_obj,'portal_workflow')
>>> status = workflow.getInfoFor(my_obj,'review_state')
>>> from zope.i18n import translate
>>> translate(msgid=status, domain='plone', target_language='en')
>>> 'Published'
您可以从 language_tool 中获取语言。
检查 http://zopei18n.readthedocs.org/en/latest/api.html#zope.i18n.translate 了解更多信息。
我正在尝试获取对象所处工作流状态的 "title"。 我确实尝试了几件事,并且一直在获取工作流状态的 "id"。
一次尝试让我得到 id
workflow = getToolByName(self.context,'portal_workflow')
status = workflow.getStatusOf("my_workflow", my_obj)
state = status["review_state"]
print state
另一种尝试也给了我一个 id
workflow = getToolByName(self.context,'portal_workflow')
status = workflow.getInfoFor(my_obj,'review_state')
#print type(status) returns "<type 'str'>"
print status
另一次尝试:
state = api.content.get_state(obj=my_obj)
print state
如何获得州的称号?一定有一些简单的东西我想念。
我假设您想获取对象的 translated
工作流状态。
状态通常在 plone
i18n 域内翻译,所以 plone UI 正确显示你的状态。您可以使用 zope.i18n.translate
来获取翻译后的状态。
>>> workflow = getToolByName(my_obj,'portal_workflow')
>>> status = workflow.getInfoFor(my_obj,'review_state')
>>> from zope.i18n import translate
>>> translate(msgid=status, domain='plone', target_language='en')
>>> 'Published'
您可以从 language_tool 中获取语言。
检查 http://zopei18n.readthedocs.org/en/latest/api.html#zope.i18n.translate 了解更多信息。