Un'istanza del Utente rappresenta un utente. Le istanze utente sono univoche e paragonabili. Se due istanze sono uguali, rappresentano lo stesso utente.
L'applicazione può accedere all'istanza User per l'utente corrente chiamando il metodo users.get_current_user() personalizzata.
Puoi utilizzare la funzione users.get_current_user() a prescindere dall'opzione di autenticazione utilizzata dalla tua app.
Un'istanza Utente può essere creata anche da un indirizzo email:
user = users.User("Albert.Johnson@example.com")
In alternativa, se hai un'istanza federated_identity
, puoi utilizzarla per creare un'istanza utente:
user = users.User(federated_identity="http://example.com/id/ajohnson")
Se il costruttore User viene chiamato con un indirizzo email che non corrisponde a un Account Google, l'oggetto verrà creato, ma non corrisponderà a un Account Google reale. Ciò vale anche se qualcuno crea un Account Google con l'indirizzo email specificato dopo in cui viene archiviato l'oggetto. Un valore utente con un indirizzo email che non rappresenta un Account Google. al momento della creazione non corrisponderà mai a un valore User che rappresenta un utente reale.
Nell'esecuzione nel server web di sviluppo, si presume che tutti gli oggetti User rappresentino Account Google quando archiviati nel datastore (simulato).
L'oggetto User per un utente valido può fornire un valore ID univoco per l'utente, che rimane invariato
anche se cambia l'indirizzo email. Il metodo user_id()
restituisce questo ID, un
Valore str
.
L'oggetto User ha la stessa forma, indipendentemente dal metodo di autenticazione utilizzato dall'app.
Utilizzo dei valori utente con Datastore
L'ID utente sia stabile. puoi usarlo nel nome di una chiave o come proprietà di stringa. Di conseguenza, quando utilizzi i valori utente, devi memorizzare l'ID utente (e forse l'ultimo per comunicare con l'utente tramite posta). L'esempio seguente mostra come confrontare a un ID utente:
Ti consigliamo vivamente di non archiviare un UserProperty
, perché include l'indirizzo email
insieme all'ID univoco dell'utente. Se un utente cambia il proprio indirizzo email e tu confronti il vecchio indirizzo email
User
al nuovo valore User
, non corrisponderanno. Piuttosto, valuta la possibilità di utilizzare
User
valore ID utente come identificatore univoco stabile dell'utente.