Django ограничивает доступ к разделу html для неаутентифицированных пользователей в шаблоне
На моей домашней странице есть навигационная панель, а затем некоторое содержимое.
Я хочу ограничить видимость содержимого только для вошедших в систему/авторизованных пользователей.
Я пробовал что-то вроде этого :
{% if user.is_authenticated %}
<div class="album py-5 bg-light">
<div class="container">
<div class="row">
{% for product in products %}
<div class="col-md-4">
<div class="card mb-4 shadow-sm">
<img src="http://127.0.0.1:8000/media/{{ product.image|truncatewords:2 }}" style="max-height:400px; max-width:100%">
<div class="card-body">
<p class="card-text"> {{ product.description|truncatechars:105 }}</p>
<div class="d-flex justify-content-between align-items-center">
<div class="btn-group">
<button type="button" class="btn btn-sm btn-outline-secondary" style="background-color:rgb(0,128,50, 0.5)">Buy</button>
<button type="button" class="btn btn-sm btn-outline-secondary"><a href="http://127.0.0.1:8000/book/{{ product.id }}" style="text-decoration:none">Read More</a></button>
</div>
<small class="text-muted" style="border: 1px solid black; padding:3px; border-radius:5%"><strong>{{ product.price}}€</strong></small>
</div>
</div>
</div>
</div>
{% endfor %}
{% else %}
<h1>Just login, bro</h1>
{% endif %}
вот мое представление, которое отображает страницу :
def all_products(request):
products = Product.objects.all()
return render(request, 'store/home.html', {'products' : products, 'user': request.user})
Итак, что я должен сделать, чтобы показать этот кусок HTML только если пользователь аутентифицирован или вошел в систему? Я уже видел, что кто-то делал что-то подобное, но не могу найти, может я что-то упустил?