在this tutorial的末尾列出了几个对象属性。但是我需要访问状态(已发布,私有,......)。我还使用dir()
搜索该属性,但我没有看到名为state
的属性或类似的属性。即,我需要这样的东西:
>>> app.Plone.foo.bar.state
"published"
答案 0 :(得分:9)
或者为了让您的代码更具可读性而不必记住奇怪的方法名称,您可以使用plone.api来执行此操作:
from plone import api
api.content.get_state(obj=your_object)
当然,您需要先将plone.api
添加到鸡蛋中,然后重新运行buildout。
答案 1 :(得分:5)
您始终可以使用plone_workflow来确定当前状态:
workflowTool = getToolByName(self.portal, "portal_workflow")
status = workflowTool.getStatusOf("plone_workflow", object)
# where "object" is your content object
print (status)
答案 2 :(得分:3)
不幸的是,没有“州”属性。相反,请使用工作流程工具检查review_state
,例如:
>>> app.Plone.portal_workflow.getInfoFor(app.Plone.foo.bar, "review_state")