问题排序Google App Engine中的IntegerProperty

时间:2010-10-08 18:08:27

标签: python google-app-engine

http://code.google.com/appengine/articles/update_schema.html

尝试在我的Web应用程序中使用一个漂亮的小更新程序。唯一的区别是不是在StringProperty上排序,如我使用IntegerProperty的示例所示。

无论在哪个方向转动查询,我都无法让它对我的过滤器做出正确回应。

bfid = self.request.get("bfid", None)
if bfid == None:
  q = Course.all()
  q.order("-bfid")
  result = q.get()
  bfid = result.bfid

q = Course.all()
q.filter("bfid <=", bfid)
q.order("-bfid")
results = q.fetch(limit=2)

for result in results:
  print result.bfid

无论bfid是什么,比如说10,它返回的两个结果是61,62,这是该组中最大的数字。

我做错了什么???

1 个答案:

答案 0 :(得分:1)

您需要将bfid转换为int; self.request.get()返回一个字符串。

你的逻辑也有问题;如果bfidNone,则查询将完成两次,第二次所有结果均小于或等于None。 (但这不是造成你问题的原因。)