我目前正在https://wsvincent.com/django-allauth-tutorial-custom-user-model/上学习教程
我看看他们如何实现主视图。
# pages/views.py
from django.views.generic import TemplateView
class HomePageView(TemplateView):
template_name = 'home.html'
<!-- templates/home.html -->
<h1>Django Login Mega-Tutorial</h1>
{% if user.is_authenticated %}
<p>Hi {{ user.username }}
<p><a href="{% url 'logout' %}">Log out</a></p>
{% else %}
<p><a href="{% url 'signup' %}">Sign Up</a></p>
<p><a href="{% url 'login' %}">Log In </a></p>
{% endif %}
但是,我看不到如何将user
变量传递到主视图模板(templates/home.html
)。我可以知道怎么回事吗?
答案 0 :(得分:2)
假设您的设置模块中有默认模板CONTEXT_PROCESSORS
,其中一个模板包括django.contrib.auth.context_processors.auth,该模板可在所有模板中设置user
变量。
此外,您可以查看source code。