2011-03-04 163 views
1

我有一个简单的appengine应用程序,它在数据存储中包含一些数据,其中一个字段是从登录用户创建的UserProperty。AppEngine DB通过电子邮件地址获取用户

当用户发送XMPP消息时,我需要能够获取该数据,我从XMPP发件人获得了他们的电子邮件地址,但是当我尝试查询该对象的数据存储时,我得不到任何结果。 代码如下:

class Users(db.Model): 
user = db.UserProperty() 
accesstoken = db.StringProperty() 
refreshtoken = db.StringProperty() 
expires = db.IntegerProperty() 
created = db.DateTimeProperty(auto_now_add=True) 



class XmppHandler(webapp.RequestHandler): 
def post(self): 
    message = xmpp.Message(self.request.POST) 
    rcpt = self.request.get('to').split("@")[0] 
    orig = self.request.get('from').split("/")[0] 
    text = self.request.get('body') 
    query = Users.all() 
    query.filter("user =", orig) 
    r = query.get() 
    authheader = "OAuth " + r.accesstoken 

回答

1

解决它,以创建我用

u = users.User(email=orig) 

用户对象然后我可以由该用户对象进行过滤:

class XmppHandler(webapp.RequestHandler): 
    def post(self): 
     message = xmpp.Message(self.request.POST) 
     rcpt = self.request.get('to').split("@")[0] 
     orig = self.request.get('from').split("/")[0] 
     text = self.request.get('body') 
     u = users.User(email=orig) 
     query = Users.all() 
     query.filter("user =", u) 
     r = query.get() 
     authheader = "OAuth " + r.accesstoken 
相关问题