Documentazione: https://docs.djangoproject.com/en/1.7/topics/auth/default/#django.contrib.auth.loginQual è la differenza tra l'autenticazione e l'accesso?
Quando si sta accedendo manualmente un utente, è necessario chiamare l'autenticazione() prima di chiamare login(). authenticate() imposta un attributo sull'utente notando quale backend di autenticazione ha autenticato correttamente quell'utente (vedere la documentazione dei backend per i dettagli), e queste informazioni sono necessarie in seguito durante il processo di login. Verrà generato un errore se si tenta di accedere direttamente a un oggetto utente recuperato dal database.
Allora, perché è esattamente authenticate
e login
2 funzioni separate? Da quanto ho capito, authenticate
verifica solo le informazioni di accesso. login
prenderà l'oggetto utente e imposterà i cookie. L'unica ragione per cui posso pensare che siano separati è perché forse puoi inserire diversi oggetti utente, ad esempio l'utente ha 2 account uniti. Forse vuoi verificare prima l'indirizzo email. È per questo che sono funzioni separate e login
non esegue il wrapping authenticate
?