cra*_*ice 0 python google-app-engine gql datastore
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()
Run Code Online (Sandbox Code Playgroud)
结果是无.为什么?
2)如何通过密钥进行此查询,而不是key_id?(像这样:
contract_id = contract_record.key().id()
contract = db.GqlQuery("SELECT * FROM Contract WHERE __key__ = KEY('Contract', '$[contract_id]')").get()
Run Code Online (Sandbox Code Playgroud)
谢谢你的帮助!
什么是'$[contract_key]'
应该是什么?你想在这里做某种字符串替换吗?这真的不是它的工作原理.也许你的意思是使用%s
运营商?
在任何情况下,我都不明白为什么你坚持通过GQL进行查询.通过键获取对象的方法直接用于get
:
contract = db.get(contract_key)
Run Code Online (Sandbox Code Playgroud)
并为密钥ID:
contract = Contract.get_by_id(id)
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
259 次 |
最近记录: |