如何在实体python appengin中使用google用户id

2024-09-23 10:33:06 发布

您现在位置:Python中文网/ 问答频道 /正文

我创建了这样一个实体:

company = dbDatafile(usOwner = user)
company.name = self.request.get("name")
company.put()

其中user是Google用户帐户。现在,当我尝试搜索该用户时,如:

^{pr2}$

分配给jinja2模板变量:

template_values = {
    'datafiles': datafiles
}

并输出到html:

{% for datafile in datafiles %}
    >>>{{ datafile.name }}         chevrons to indicate any looping
{% endfor %}

我没有输出。在

数据在管理仪表板中,但我无法访问它。有什么想法吗?在

谢谢


Tags: 用户nameself实体getputrequestgoogle
2条回答

回答我的问题不是一个简单的解决办法。我决定使用父功能,因此我的代码现在如下所示:

company = dbDatafile(parent=db.Key.from_path('user', user.user_id()))
company.name = self.request.get("name")
company.usOwner = user
company.put()


datafiles = dbDatafile.gql("WHERE ancestor IS '%s'" % db.Key.from_path('user', user.user_id()))

不确定这是否理想,但它可以工作,并且与高复制数据存储兼容。在

如果usOwner是一个UserProperty,则需要在GQL中使用USER()

datafiles = dbDatafile.gql("WHERE usOwner = USER(:1)", user.email())

别忘了,插入并不总是意味着插入。在

相关问题 更多 >