get_by_id似乎没有得到id

时间:2013-07-11 16:58:17

标签: python google-app-engine google-cloud-datastore app-engine-ndb

问题表中有一个实体,ID为6544293208522752。 当我尝试使用Questions.get_by_id(6544293208522752)将其恢复时,它返回None。

------更新

要获取父级,categoryKey只是作为整数传入:

def questionsKey(categoryKey):
    return ndb.Key('Questions', categoryKey)

通过get请求获取QuestionID,一个页面发送question.key.id(),另一个页面通过questionID = int(self.request.get('ID'))

获取

2 个答案:

答案 0 :(得分:1)

你在混合字符串和int ID吗?数据存储模型可以有,但它们不一样。 (自动生成的ID是整数,但是,例如,作为URL参数传递的ID将是一个字符串,您需要将其转换。)

答案 1 :(得分:1)

因为您要将实体存储在父级中,您需要将其提供给get_by_id函数。

entity = Questions.get_by_id(6544293208522752, parent=questionsKey(questionCategory))

否则你不会让实体回来。