Как правильно ссылаться на пользователей в GQL-запросах в App Engine? - PullRequest
1 голос
/ 01 мая 2011

У меня есть db.Model, которая имеет свойство db.UserProperty. Например:

class Photo( db.Model ):
    owner = db.UserProperty()
    title = db.StringProperty()

Когда я хочу получить все фотографии для пользователя, я делаю это:

photos = Photo.gql( "WHERE owner = USER(:1)", users.get_current_user().nickname() )

Однако это вызывает проблемы между псевдонимами Google и не-Google. При локальном тестировании, если я использую адрес электронной почты test@example.com, то псевдоним будет «test@example.com». Если я использую test@gmail.com, то псевдоним «test». Когда я тестирую учетную запись Gmail, мне нужно добавить "@ gmail.com" к .nickname ().

Есть ли лучший способ сделать это, чем жесткое кодирование + "@ gmail.com" для всех моих запросов к базе данных?

1 Ответ

5 голосов
/ 01 мая 2011

photos = Photo.gql("WHERE owner = :1", users.get_current_user())

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...