2015-03-27 3 views
0

Я reviewed как удалить из webapp2_extras.appengine.auth.models.UniqueКак удалить из webapp2 extras appengine auth models Уникальные?

Это решение работает с:

Unique.delete_multi(map(lambda s: 'User.auth_id:' + s,user.auth_ids))

Проблема заключается в том, что есть вторая запись. Следующее утверждение не имеет никакого эффекта:

Unique.delete_multi(map(lambda s: 'User.email:' + s,user.email))

Нет ошибки в журнале. Ничего не произошло.

Пластинка Я пытаюсь удалить имеет значение в поле «Key Name» в Уникальна «User.email:[email protected]» Когда пользователь будет создан, то unique_properties выглядит следующим образом:

unique_properties = ['email'] 

Думаю, что это был какой-то замок, я сначала попробовал войти в систему, а затем удалил пользователя (сохранил user.email в temp var). Нет кубиков.

ответ

1

Решение было найдено в использовании delete_multi по-разному для auth_ids и электронная почта:

для user.email (примечание в ОП как электронная почта была создана):

unique_email = ['User.email:%s' % user.email] 
Unique.delete_multi(unique_email) 

для user.auth_ids:

Unique.delete_multi(map(lambda s: 'User.auth_id:' + s,user.auth_ids))