我的系统中有一个用户创建了一个我想检索的实体。我正在尝试使用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调用将返回正确的结果?
最佳答案
使用filter()
时,要求字段名称和运算符之间有一个空格。为了使filter()
调用按预期工作,您只需要在等号前插入一个空格即可:
randy_res = Vote.all().filter('created_by =', randy).fetch(limit=10)
关于google-app-engine - App Engine的过滤器与gql方法,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3304532/