Получить пользователя Google App Engine с помощью user_id

В GAE вы можете найти User с объектом User user_id?

Другими словами, есть ли что-то эквивалентное:

from google.appengine.api.users import User

user = User.get_by_id(user_id)

Ответ 1

Кажется, это единственное сообщение в Интернете по этому поводу, и с тех пор, как я искал решение, я думал, что опубликую то, что нашел здесь.

Что сказал amir75 об использовании UserProperty, отлично подходит для хранения самого объекта User, возвращаемого модулем google.appengine.users.

Но если вам нужно найти пользователя с помощью поля user_id вместо поля электронной почты по умолчанию, обычно что-то вроде user = User(email = '[email protected]')

Вы можете использовать это для запроса user_id. user = User(_user_id = 'validuserid') Допустимый user_id - это то, что вы получили раньше от вызова user.user_id()

Я не уверен, что amir75 ссылается на доступ ко всем учетным записям google, поскольку возвращенный объект User имеет только адрес электронной почты и псевдоним, и это тоже, только если пользователь разрешает приложению получать доступ к этой информации.

Мое использование для этого - я хочу, чтобы люди подписывались на сайте, но им нужен администратор, чтобы подтвердить их для использования сайта. Форма, используемая администратором для подтверждения пользователей, может использовать идентификатор электронной почты в качестве поля для идентификации флажка для подтверждения пользователя, но при изменении может, user_id представляется более безопасным полем для использования.

Ответ 2

Я так не думаю. ... они, конечно же, не просто предоставят вам доступ к каждому держателю учетной записи google!

Идея заключается в том, что вы храните идентификаторы пользователей как свойства в своем хранилище данных, как только они вошли в ваше приложение.

Существует тип свойства UserProperty

http://code.google.com/appengine/docs/python/datastore/typesandpropertyclasses.html

Итак, вы можете запросить список пользователей из своего собственного определения хранилища данных.

HTH