为什么这个按键查询的数据存储返回None?

2024-05-20 04:39:21 发布

您现在位置:Python中文网/ 问答频道 /正文

1)执行此查询时:

contract_record = Contract(book_number = 42, initial_page = 420, final_page = 442)
contract_record.put()
contract_key = contract_record.key()
contract = db.GqlQuery("SELECT * FROM Contract WHERE __key__ = KEY('Contract', '$[contract_key]')").get()

结果是没有。为什么?在

2)如何不按键而是按键?id进行查询? (类似这样:

^{pr2}$

谢谢你的帮助!在


Tags: keyfromnumberdbputpagerecordselect
2条回答

也许这不是你想要的答案,但你可以试试这个:

contract_record = Contract(book_number = 42, initial_page = 420, final_page = 442)
contract_record.put()
contract_key = contract_record.key()
contract = db.get(contract_key)

'$[contract_key]'应该是什么?你想在这里做一些字符串替换吗?这不是它的工作原理。也许你的意思是使用%s运算符?在

无论如何,我真的不明白为什么你坚持要通过GQL进行查询。通过键获取对象的方法是直接使用get

contract = db.get(contract_key)

对于密钥ID:

^{pr2}$

相关问题 更多 >