JQL没有为GET参数项工作
-
13-09-2019 - |
题
我想比较关键,以过滤GQL在python而是直接对比结果也不类型转换为int的作品。有前我不得不做出一个变通如下注释的行提及。任何线索。
row = self.request.get("selectedrow")
#mydbobject = DbModel.gql("WHERE key=:1", row).fetch(1)
#mydbobject = DbModel.gql("WHERE key=:1", int(row)).fetch(1)#invalid literal for int() with base 10
#print mydbobject,row
que = db.Query(DbModel)
results = que.fetch(100)
mydbobject = None
for item in results:
if item.key().__str__() in row:
mydbobject = item
EDIT1-一个更不检索记录的尝试,关键在数据存储中存在与记录一起 mydbobject = DbModel.gql( “WHERE键= KEY( '%s' 的)” %行).fetch(1)
解决方案
我是在我的假定你基本上只是想检索与特定键的对象是否正确?如果是这样,获取和get_by_id方法可能会有所帮助:
mydbobject = DbModel.get_by_id(int(self.request.get("selectedrow")))
其他提示
在错误“无效字面对于int()”表明paramater通到int不是表示整数的字符串。尝试打印的“行”值用于调试运行,我打赌它是一个空字符串。
检索来自关键的元件正确的方法是简单地通过使用方法“获得”或“get_by_id”。 在你的情况:
row = self.request.get("selectedrow")
mydbobject = DbModel.get(row)
不隶属于 StackOverflow