gpt4 book ai didi

python - 特定文件夹的内容迁移

转载 作者:行者123 更新时间:2023-12-01 06:05:32 27 4
gpt4 key购买 nike

我有一个脚本,用于将我的 Plone 实例的图像迁移到自定义类型。其部分代码示例如下所示:

class ImagesToPhotosMigrator(InplaceATItemMigrator):
src_portal_type = 'Image'
src_meta_type = 'ATBlob'
dst_portal_type = 'Photo'
dst_meta_type = 'Photo'

def last_migrate_reindex(self):
self.new.reindexObject(idxs=['object_provides', 'portal_type',
'Type', 'UID'])

fields_map = {
}

def getImagesToPhotosMigrationWalker(self):
return getMigrationWalker(self, migrator=ImagesToPhotosMigrator)

def migrateImages(self):
walker = getImagesToPhotosMigrationWalker(self)
walker.go()
return walker.getOutput()

脚本有效,但我希望迁移仅发生在特定文件夹中,例如 /my-folder,在脚本中添加什么?

最佳答案

您应该指定您引用 Products.contentmigration ,因为它并不隐含在“内容迁移”一词中(最近迁移的种类比代码行还要多)。无论如何,这是您的解决方案(CustomQueryWalker 是关键):

from Products.contentmigration.walker import CustomQueryWalker

def getImagesToPhotosMigrationWalker(self, query):
return CustomQueryWalker(self, ImagesToPhotosMigrator, query)

def migrateImages(self):
walker = getImagesToPhotosMigrationWalker(self, {'path' : '/youfolder'})
walker.go()
return walker.getOutput()

请注意,查询参数是目录查询,因此您可以指定路径、portal_type 或目录中的任何索引。

关于python - 特定文件夹的内容迁移,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8176065/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com