304 votes

Comment vérifier si un utilisateur est connecté (comment utiliser correctement user.is_authenticated) ?

Je regarde ce site web mais je n'arrive pas à trouver comment faire car ça ne marche pas. Je dois vérifier si l'utilisateur actuel du site est connecté (authentifié), et j'essaie :

request.user.is_authenticated

malgré la certitude que l'utilisateur est connecté, il renvoie juste :

>

Je suis capable de faire d'autres demandes (de la première section dans l'url ci-dessus), telles que :

request.user.is_active

qui renvoie une réponse positive.

1 votes

Is_authenticated (à l'intérieur comme à l'extérieur des modèles) renvoie toujours True, que l'utilisateur soit connecté ou non. Pour vraiment identifier si un utilisateur est connecté, la seule solution semble être de comparer la date et l'heure de sa dernière consultation avec le délai d'attente.

-5voto

Jatin Goyal Points 199

Pour Django 2.0+. les versions utilisées :

    if request.auth:
       # Only for authenticated users.

Pour plus d'informations, visitez le site https://www.django-rest-framework.org/api-guide/requests/#auth

request.user.is_authenticated() a été supprimé dans les versions Django 2.0+.

7 votes

request.user.is_authenticated est toujours valable. Vous vous référez à la documentation de django-rest-framework et non à celle de django

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X