0

我试图找出 nosgae 是否支持 blobstore 进行测试,就像它对数据存储所做的那样。我在测试 blobstore 上传时遇到了麻烦。有人知道更多吗?

谢谢你。

编辑:

blob 是一个 BlobReferenceProperty()

现在我有一些问题。可能是因为我错过了一些东西。如果我尝试使用这样的 blob 添加实体:

e = entity(title=title, blob=open('/path/to/image.jpg').read())
e.put()

我得到一个

   File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/api/datastore_types.py", line 113, in ValidateString
    if len(value.encode('utf-8')) > max_len:
UnicodeDecodeError: 'ascii' codec can't decode byte 0xff in position 0: ordinal not in range(128)

如果我使用

...
 blob=open('/path/to/image.jpg', 'r')
...

结果是:

File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/ext/blobstore/blobstore.py", line 429, in get_value_for_datastore
    return blob_info.key()
AttributeError: 'file' object has no attribute 'key'

然后,如果我使用 webtest.TestApp 尝试使用像“/_ah/upload/...”这样的上传网址,我会得到 404。我猜是因为我的应用程序不涵盖“/_ah/upload/...”网址。

任何提示?

4

1 回答 1

1

应该这样做 - NoseGAE 只需使用 dev_appserver 的代码来设置相同的环境。

于 2010-12-09T00:49:46.617 回答