原来Expando和PolyModel类没有key参数

标签:Google App Engine

今天遇到个奇怪的问题,创建实体时设置key老失败,提示:
ReservedWordError: Cannot define property using reserved word 'key'. If you would like to use this name in the datastore consider using a different name like key_ and adding name='key' to the parameter list of the property definition.
可我看文档和读源码都发现有key这个参数,所以实在不明白哪错了。

最后想部署到服务器上试试是不是本地服务器的bug时发现,我用的不是Model类,而是Expando类。于是我改成Model,发现创建成功了…

读了源码后发现,虽然Expando和PolyModel类继承自Model类,但是key是Model类构造器的一个keyword参数,而Expando和PolyModel并没有处理…

0条评论 你不来一发么↓

    想说点什么呢?