python - [Django] Comment obtenir des informations utilisateur pour chaque modèle
漂亮男人
漂亮男人 2017-07-05 10:34:29
0
5
1023

Par exemple, si vous utilisez Django pour créer un site Web, la plupart des pages contiendront des informations utilisateur, telles que le nom d'utilisateur, l'avatar, etc.

Mais il m'est impossible de transmettre une variable utilisateur dans le contexte pour chaque vue, n'est-ce pas ?

Comment puis-je habituellement répondre à mes besoins ?

漂亮男人
漂亮男人

répondre à tous(5)
typecho

Vous devez trop vous inquiéter, vous n'avez pas besoin de les écrire un par un manuellement, il est déjà là par défaut, utilisez-le simplement, par exemple : {{user.username}}
Mais il n'y a pas d'informations de champ personnalisé comme un avatar.
Ou vous pouvez personnaliser un context_processors.py pour renvoyer les informations souhaitées, puis l'importer dans settings.py. Il n'est pas nécessaire de revenir dans chaque fonction

洪涛
如果你是使用的auth.login()登录的话,你可以在任何一个模板里直接使用user对象
如{{user.username}}
Ty80

Cela devrait être {{request.user.username}}.
Et Django prend en charge la définition de variables globales

習慣沉默

Une fois l'utilisateur connecté, les informations utilisateur seront généralement stockées dans request.user. Il n'est pas nécessaire de transmettre la variable utilisateur dans le contexte. Le principe est que django.template.context_processors.request est référencé dans les paramètres

.
我想大声告诉你

Point supplémentaire : si une partie fixe du contenu apparaît sur plusieurs pages, vous pouvez utiliser l'héritage de modèle pour extraire les mêmes parties et modifier le contenu du modèle via extends et include.

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal