如何使用谷歌应用引擎光标?

时间:2014-10-18 11:48:14

标签: google-app-engine app-engine-ndb google-cloud-datastore

我收到此错误:cursor argument should be str or unicode (0) 运行这个python代码时:

#get cursor
        curs = self.request.get('cursor',0)
        cursor = Cursor(urlsafe=curs)
        #get messages
        messages, next_curs, more = Message().queryMessages(userId=945454,bussId=454545,cursor=cursor)

错误指向cursor = Cursor(urlsafe=curs)

问题是什么?

1 个答案:

答案 0 :(得分:1)

您已为cursor设置了0的默认值。因此,如果它不在请求中,则该值将用作实例化新游标的参数。显然,这不是一个有效的价值。

相反,不要设置默认值,只有在请求中获得值时才实例化游标:

cursor = None
curs = self.request.get('cursor')
if curs:
    cursor = Cursor(urlsafe=curs)