在Google AppEngine上使用upload_data不允许我使用基于ID的密钥更新实体

时间:2010-06-07 18:32:06

标签: python django google-app-engine

这似乎是如此基本 - 我必须遗漏一些东西。

我正在尝试下载我的实体,更新一些属性,然后上传实体。我正在使用Django nonrel& appengine项目,因此所有实体都存储为id而不是名称。

我可以将实体下载到csv中,但是当我上传时(通过appcfg.py upload_data ...),密钥以name = ...而不是id = ...

进入

在配置文件中,我添加了 -

   import_transform: transform.create_foreign_key('auth_user', key_is_id=True)

看看这是否会像转换状态的文档一样“将密钥转换为整数以用作id。”使用此import_transform,我收到此错误 -

ErrorOnTransform:此时输入不支持数字键。

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

如错误消息所示,目前不支持使用数字ID覆盖实体。您可以通过提供使用相关密钥重新创建实体的上传后功能来解决这个问题,但我建议您回过头来分析为什么要这样做 - 为什么不在原地更新实体App Engine,还是使用remote_api来做到这一点?批量下载和上传似乎是一种繁琐的处理方式。