У меня проблемы с аутентификацией пользователя для моего сайта django. У меня есть экран входа, который, кажется, работает. Когда пользователь нажимает кнопку входа в систему, я вызываю django.contrib.auth.login
, и кажется, что он работает нормально. Однако на последующих страницах не известно, что есть пользователь, вошедший в систему. Пример {% user.is_authenticated %}
имеет значение false. Есть также некоторые функции меню, которые я хочу сделать доступными для зарегистрированных пользователей, такие как my-account
и logout
. Эти функции недоступны, кроме как на странице входа. Что действительно странно.
Кажется, это проблема пользовательского контекста. Но я не уверен, как я должен передавать контекст, чтобы убедиться, что мой логин стабилен. Does anyone know at could be going on here? Any advice?
--------- часть base.html ------------
<!--- The following doesn't register even though I know I'm authenticated -->
{% if user.is_authenticated %}
<div id="menu">
<ul>
<li><a href="/clist">My Customers</a></li>
<li><a href="#">Customer Actions</a></li>
<li><a href="#">My Account</a></li>
</ul>
</div>
{% endif %}
--------- my views.py -----------------
# Should I be doing something to pass the user context here
def customer_list(request):
customer_list = Customer.objects.all().order_by('lastName')[:5]
c = Context({
'customer_list': customer_list,
})
t = loader.get_template(template)
return HttpResponse(t.render(cxt))