所有権を変更する必要のあるコンテンツがあります。デフォルトでは、コンテンツタイプの所有者はコードからのadminですobj.getOwner()
が、コンテンツタイプの作成者はadminではありません(例:someuser@samplemail.com)。
私はこのリンクをたどりました:http://developer.plone.org/content/ownership.htmlそしてコンテンツタイプのviewメソッドを作成しました。以下は私のコードスニペットです:
def change_owner(self):
membership = getToolByName(self.context,'portal_membership')
path='/'.join(self.context.getPhysicalPath())
brains=self.portal_catalog.searchResults(path={'query':path,'depth':0})
for brain in brains:
creator = brain.Creator
crtor_obj = membership.getMemberById(crtor1).getUser()
brain.getObject().setCreators(creator,)
brain.getObject().changeOwnership(crtor_obj)
brain.getObject().reindexObjectSecurity()
return
私のコードはコンテンツの所有権を変更しなかったようです。所有者は引き続き管理者であり、作成者は引き続き元の作成者です。コードに問題はありますか?