1

GAE 不允许读/写文件系统,这是 Django 的 FileField(或 ImageField)正在使用的(通过 FileSystemStorage 类)。

我正在考虑实现自定义 Django 存储,但 GAE blobstore 似乎与 Django 要求完全不兼容。具体来说,GAE blobstore 假设从客户端直接上传到存储,而 Django 自定义存储需要实现 _save(name, content) 方法。

据我所知,没有人提到这个缺失的实现。那里有一些自定义存储项目(最著名的是:BitBucket 上的 django-storages),实现了 S3、Windows Azure、许多其他后端,但对 Google 没有。

我应该采取什么方向在我的模型中拥有一个托管在 Google App Engine 上的 FileField?

澄清一下: - 我正在使用库存的主干,使用谷歌 SDK 附带的谷歌云 SQL Django 的主干 - 我没有使用 Django nonrel。- 我遵循了Google 文档中的Django 指南

4

1 回答 1

1

blobstore 现在支持写入文件功能。请参阅 将文件写入 blobstore。因此现在可以实现_save(name, content)with blobstore。

另一种方法是使用云存储。它提供了比 blobstore 更多的功能,例如 listdir、open、delete。

https://developers.google.com/appengine/docs/python/googlestorage/

于 2013-04-26T05:11:17.877 回答