2012-07-20 49 views
2

我们希望在单个脚本操作中将对象移动并重命名为Plone中的其他文件夹。移动+将内容项目重命名为Plone中的其他文件夹

  • 是否有一个API'sh调用可以实现这个功能?

  • 或者:应该调用cut + paste + manage_renameObjects()还是有更简单的调用链?

+1

比cut + paste + manage_renameObjects()简单吗? :) – Yuri 2012-07-20 08:14:53

回答

3

您应该剪切+粘贴+ manage_renameObjects()。这是您可用的唯一API。 :-)

我经常使用一个辅助方法作业:

from Acquisition import aq_parent, aq_inner 

def move(id_=None, ob=None, parent=None, dest=None, newid=None): 
    # Either provide id and parent, or ob. 
    if id_ is None: 
     id_ = ob.getId() 
    if parent is None: 
     parent = aq_parent(aq_inner(ob)) 
    clipboard = parent.manage_cutObjects([id_]) 
    result = dest.manage_pasteObjects(clipboard) 
    if newid is not None: 
     dest.manage_renameObject(result['new_id'], newid) 
相关问题