我有一个班级用户
class User(db.Model):
userId = db.StringProperty()
email = db.StringProperty()
channelToken = db.StringProperty()
我用
插入了一条记录user = User(key_name='1',userId='1',email='abc@gmail.com',channelToken='123')
user.put()
完美插入。但是现在当我试图检索它时,它显示错误
channelToken= db.GqlQuery("SELECT channelToken FROM User WHERE userId=1")
logging.info("Found Channel : " + str(channelToken))
显示
<google.appengine.ext.db.GqlQuery object at 0xfe112370>" is not a string.
我做错了吗?
答案 0 :(得分:2)
参考https://cloud.google.com/appengine/docs/python/datastore/gqlqueryclass#GqlQuery
q = db.GqlQuery("SELECT channelToken FROM User WHERE userId=1")
channelToken = q.get()
日志记录提供了一个内存位置,因为GqlQuery返回一个对象。
答案 1 :(得分:1)
您也可以使用gql
。
channelToken = User.gql("WHERE userId = :1", "1").get().channelToken
删除所有userId = 1
users = User.gql("WHERE userId = :1", "1").fetch()
for user in users:
user.key.delete()