提取zope data.fs

我有一个zope / plone网站,我从几个用户那里存储图片和video,但是我现在想把内容移到另一个网站。 什么是最简单的方法来提取Zope的data.fs的内容? 我听说有这个Python模块,但我想避免从头开始编写代码,如果可能的话。 我使用Python 9.04与Python 2.6。

编辑:我的意图是不移动内容到另一个plone网站,我想提取内容作为常规文件,从头开始build立一个新的(可能是非plone)网站。 我现在没有可用的plone站点,因为Ubuntu 9.04不支持它。 对不起,我很抱歉。

ZODB是一个完整的对象数据库,其中的数据不会被存储为文件。 你可以比较一下,例如,postgres:不可能把你的postgres数据转换成一堆文件。

有几个选项可以从您的ZODB中提取可能适合您的数据:

  • 您可以启用Zope的FTP服务。 有关详细信息,请参阅zope.confconfiguration文件(它有许多解释选项的注释)。 一旦启用FTP,您可以使用任何标准FTP客户端提取大部分数据。
  • 有几个数据导入/导出产品可用于Plone。 也许其中一个将为你工作。

不幸的是,这两个选项都依赖于你可以运行Zope,你声明你不能这样做。 我猜这是由于Plone需要Zope 2.10或更旧版本,它只能在Python 2.4上运行。 如果是这样的话,你可以尝试编译一个较旧的Python版本并将其安装到你的系统上。 Python完全支持同时安装多个版本,所以不应该破坏系统上的其他任何东西。

恐怕不能在没有运行任何python工具的情况下从ZODB提取数据,并且要能够从ZODB加载Plone数据,您需要有一个可用的Plone环境,以便ZODB可以为存储的数据加载python类在里面。

tres seaver写了一个产品,做了很多你想要的东西 – 虽然我不知道图像,但可能。

如果我记得正确,它被称为fsdump。

在ZMI中点击根文件夹中的站点,然后点击导出button,这将在$ PLONE / exports中创build一个文件,在你的新服务器服务器上ZMI点击导入并指向这个文件,然后zope将它导入为它在另一台服务器上。