使用blob将文件数据直接写入磁盘/ db(plone.app.blob / Archetypes和plone.namedfile)

时间:2014-04-30 00:41:04

标签: blob plone dexterity archetypes

我有几个数据需要合并到一个文件中(ATContentTypes blob文件,Plone 4.1)。数据总量可能非常大,所以我真的不想将它全部加载到内存中,连接它,并执行类似o.setFile(data)的操作。如果我直接写入文件系统,我可以打开(myfile,' a')并写入它,但我不清楚如何使用blob支持的内容类型做到这一点。我能够查看的所有文档和测试都只是使用str或内存中的StringIO进行设置。有没有办法在没有将整个内容加载到内存中的情况下附加到此字段?

同样,我也考虑过将Dexterity与plone.namedfile NamedBlobFile一起使用。看起来该字段只有一个'数据'属性基本上是一个字符串。如果不将整个内容加载到内存中,我怎么能追加到它?

1 个答案:

答案 0 :(得分:0)

它已经很老了,产品从未正式发布过,但它可以帮到你:ore.bigfile。

本博客文章中详细解释了这一点:http://blog.jazkarta.com/2010/09/21/handling-large-files-in-plone-with-ore-bigfile/