AppEngine DB 通过电子邮件地址获取用户
Posted
技术标签:
【中文标题】AppEngine DB 通过电子邮件地址获取用户【英文标题】:AppEngine DB get user by email address 【发布时间】:2011-03-04 08:02:38 【问题描述】:我有一个简单的 appengine 应用程序,它在数据存储中保存一些数据,其中一个字段是从登录用户创建的 UserProperty。
当用户发送 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
【讨论】:
以上是关于AppEngine DB 通过电子邮件地址获取用户的主要内容,如果未能解决你的问题,请参考以下文章
关注 AppEngine 上的数据存储模型结构 - 按日期排序关注者
如何通过iOS中的Twitter API获取用户电子邮件地址?
是否可以为 appengine 数据存储实体获取 Google 电子表格的数据源 URL?