向用户谷歌应用引擎添加属性

Posted

技术标签:

【中文标题】向用户谷歌应用引擎添加属性【英文标题】:add properties to users google app engine 【发布时间】:2010-03-24 01:14:57 【问题描述】:

使用 Google App Engine (Python) 保存用户个人资料的最佳方式是什么? 我为解决这个问题所做的是创建另一个具有 UserProperty 的模型,但是从用户那里请求配置文件我必须做这样的事情:

if user:
    profile = Profile.all().filter('user =', user).fetch(1)
    if profile:
        property = s.get().property

有什么想法吗?

【问题讨论】:

【参考方案1】:

如果将用户的 user_id 设为用户的 Profile 实体的 key_name,则可以使用 Profile.get_by_key_name() 来获取它,这将比查询然后获取更快。

将 user_id 包含在密钥中的 Memcaching 将允许更快地访问配置文件。

【讨论】:

【参考方案2】:

不,这是一种非常正确的方法(当然,您可能还想将其中一些配置文件存储在内存缓存中;-)。它会很快,因为user 字段上会有一个索引。如果您要求的是,您肯定不能修改 Google 提供的用户模型。

【讨论】:

【参考方案3】:

这不是一个解决方案,而是一个警告。

用户值不是用户的唯一且稳定的标识符。并且 user_id 属性只存在于谷歌用户而不是 OpenId。所以不要相信这个解决方案。

【讨论】:

以上是关于向用户谷歌应用引擎添加属性的主要内容,如果未能解决你的问题,请参考以下文章

使用python的谷歌应用引擎上的xmpp错误

使用python在谷歌应用引擎上出现xmpp错误

谷歌应用服务器中的 yaml 异常“无法将 testProject 添加到属性应用程序”正则表达式问题?

“network: session_affinity:true” app.yaml 文件的属性没有反映在谷歌应用引擎中

苹果自研搜索引擎,正面对抗谷歌

解决谷歌浏览器无法从该网站添加应用拓展程序和用户脚本