我的系统中有一个用户创建了一个我想要检索的实体。我试图使用filter来做这件事,因为它应该比调用gql method更快。但是,过滤器不返回任何结果,并且 gql 有效。
randy_res = Vote.all().filter('created_by=', randy).fetch(limit=10)
randy_res = Vote.gql('WHERE created_by=:1', randy)
有没有理由为什么过滤器会返回一个空列表,而 gql 调用会返回正确的结果?
答案 0 :(得分:12)
使用filter()
时,您必需在字段名称和运算符之间留一个空格。要使filter()
来电按预期工作,您只需在等号前插入一个空格:
randy_res = Vote.all().filter('created_by =', randy).fetch(limit=10)