{{ user.username }} et {{ request.user.username }}
Salut !
-
quand tu fais
{{ user.username }}: tu fais directement référence à une variableuserpassée au template par le contexte. Si, dans la vue qui rend ce template, tu as envoyé un objetuserdans le contexte, alors tu peux accéder à son attributusernamedirectement de cette manière. -
{{ request.user.username }}: Dans ce cas, tu fais référence à l'utilisateur associé à la requête actuelle.request.userest mis à la disposition du template par le contexte de la requête (request context), à condition que tu aies activé le context processordjango.contrib.auth.context_processors.auth(ce qui est activé par défaut si tu utilisesdjango.contrib.auth). Cela permet de récupérer l'utilisateur actuellement authentifié, peu importe l'objetuserque tu as pu passer dans le contexte.
En gros, si dans ta vue tu as spécifié un objet user à envoyer au template, tu utiliserais {{ user.username }}. Si tu veux toujours te référer à l'utilisateur connecté, peu importe le contexte envoyé par la vue, tu utiliserais {{ request.user.username }}. C'est une bonne pratique d'utiliser {{ request.user.username }} quand tu veux être sûr de toujours référencer l'utilisateur authentifié actuel.
Inscris-toi
(c'est gratuit !)
Tu dois créer un compte pour participer aux discussions.
Créer un compte