1

有没有办法使用 WebDAV 将文件复制到 Plone 并让 Plone 将其注册为事件文件(而不是简单的页面)?

我非常想将 Plone 用于它的标准 CMS 属性(非常棒),但我不能花时间在 Plone 中编写应用程序 - 它太复杂了。“计划”是在另一个系统中生成信息并使用脚本将其导出到 Plone - 因此,如果这些生成的文件可以被识别为事件,则通过 WebDAV 复制将是一个完美的解决方案。如果不是替代方案,仍然使用 WebDAV,将生成和复制一个 python 脚本,该脚本使用 API 调用来创建事件。虽然我不确定在哪里复制以及要进行哪些 API 调用。或者有没有办法导入 iCal 文件?

谢谢

4

1 回答 1

4

您可以自定义代码以完成任何目的——但默认情况下,开箱即用,您需要:

  1. 上传带有文件扩展名的文本文件.event——您可以在 Plone 站点根目录的内容类型注册表工具中进行编辑。这告诉文件夹要创建什么类型的项目(事件)。

  2. 在您通过 WebDAV 上传的文本文件中,使用 RFC822 样式的键值格式(如邮件标头或 HTTP 标头已格式化)格式化您的文本文件。您必须对所有日期/时间字段值使用 IS0 8601 格式 (YYYY-MM-DDThh:ss:mmTZD) 时间戳。

  3. 如果对最后一点的细节有疑问,请参阅 Products.Archetypes.Marshall.RFC822Marshaller 和 DateTime.DateTime (zope2) 中的源代码。

  4. 如果您希望自定义正在使用的编组器,您可以编写自己的编组器,并使用猴子补丁 ATEvent 来使用它。如果您为此编写代码,这将允许您支持 vcs/ics 的上传/下载。这不是阻力最小的路径。YMMV,这是记录不足的,需要一些严肃的 Plone 开发经验。

于 2012-06-21T17:20:12.913 回答