Вот так вопрос! Довольно обширная тема.
Я делал все по документации -
https://djbook.ru/rel1.9/topics/auth/default.html
В Представлении:
from django.contrib.auth.models import Permission, User
from django.contrib import auth
def index(request):
product_all = Product.objects.all()[:12]
# сессия пользователя
user = request.user
set = {
'product_all' : product_all,
'user' : user
}
try:
return render(request, 'shop/index.html', set)
except(KeyError, Product.DoesNotExist):
return render(request, 'shop/404.html')
В шаблоне:
{% block auth %}
<div class="log_in">
{% if user.is_anonymous %}
<form action="{% url 'shop:auth' %}" method="post">
{% csrf_token %}
<input type="text" name="login" placeholder="e-mail" />
<input type="password" name="password" placeholder="password" />
<input type="submit" value="Submit" />
</form>
{% else %}
<a href="{% url 'auth:profile' %}">Profile</a>
{% endif %}
</div>
{% endblock %}
В urls:
url(r'auth/$', views.auth, name='auth'),
А Профиль это вообще отдельное приложение