Python 使用UserProperty链接数据的Google应用程序引擎
我正在用GAE写一份申请书。为了将当前登录的用户链接到我的应用程序中的数据,我一直依赖于用户之间的平等性。get_current_user()和members.user(请参见下面的模型)。我遇到的麻烦是,当用户登录时使用的电子邮件地址与他/她最初登录时使用的大小写不同(janeDoe@example.com != janedoe@example.com). 将当前用户链接到特定于应用程序的数据的最可靠方法是什么Python 使用UserProperty链接数据的Google应用程序引擎,python,google-app-engine,data-modeling,capitalization,Python,Google App Engine,Data Modeling,Capitalization,我正在用GAE写一份申请书。为了将当前登录的用户链接到我的应用程序中的数据,我一直依赖于用户之间的平等性。get_current_user()和members.user(请参见下面的模型)。我遇到的麻烦是,当用户登录时使用的电子邮件地址与他/她最初登录时使用的大小写不同(janeDoe@example.com != janedoe@example.com). 将当前用户链接到特定于应用程序的数据的最可靠方法是什么 class members(db.Model): firstName=d
class members(db.Model):
firstName=db.StringProperty(verbose_name='First Name',required=True)
lastName=db.StringProperty(verbose_name='Last Name',required=True)
user=db.UserProperty()
始终将用户名转换为小写,然后对其执行操作:在存储第一次和以后的比较时。不要使用用户名-调用
user.user\u id()
,并对其进行比较。它保证保持不变,即使昵称或电子邮件地址改变。我不知道Pyton,但这似乎是正确的。无论如何,这个问题与语言无关:在存储或比较电子邮件(以及用户名)之前,您总是使用小写。如果这样做,我需要将属性类型更改为db.UserProperty()以外的其他类型。@user589983为什么user\u id()
是用户对象上的一个方法,由UserProperty
返回。