Могу ли я сделать представление видимым для некоторых определенных пользователей, а для других нет на Django
Я хочу сделать некоторые pages not accessible для некоторых пользователей, что я имею в виду, например, я хочу сделать user1 can see a viewa and can not see a viewb,
Я пытался сделать это, я разработал 2 функции разрешений и функцию пользователя роли:
У меня есть шаблон home, где есть боковая панель, содержащая 2 списка (каждый список называется view), я хочу, чтобы только пользователи, которым разрешено видеть этот view-list, могли видеть его на панели навигации;
вот код в файле template.html:
<nav class="mt-2">
<ul class="nav nav-pills nav-sidebar flex-column" data-widget="treeview" role="menu" data-accordion="false">
{% if perms.app1_name.is_normaluser_login_required %}
<li class="nav-item">
<a href="#" class="nav-link">
<i class="nav-icon fas fa-tachometer-alt"></i>
<p>
Module 1
<i class="right fas fa-angle-left"></i>
</p>
</a>
<ul class="nav nav-treeview">
<li class="nav-item">
<a href="{%url 'form_module1'%}" class="nav-link">
<i class="far fa-circle nav-icon"></i>
</a>
</li>
</ul>
</li>
{% endif %}
{% if perms.app2_name.is_privilgeuser_login_required %}
<!---->
<li class="nav-item">
<a href="#" class="nav-link">
<i class="nav-icon fas fa-tachometer-alt"></i>
<p>
Module2
<i class="right fas fa-angle-left"></i>
</p>
</a>
<ul class="nav nav-treeview">
<li class="nav-item">
<a href="{%url 'form_module2'%}" class="nav-link">
<i class="far fa-circle nav-icon"></i>
</a>
</li>
</ul>
</li>
{% endif %}
</ul>
</nav>
---> после этого два списка исчезают с панели навигации (как будто не имеет значения, есть ли у пользователя его роль или нет), в противном случае я указал на странице администратора пользователей и их роли. PS: для подтверждения того, что роли пользователей работают идеально, я попробовал сделать шаблон (неавторизованный, если пользователь пытается получить доступ к представлению, и он работает нормально, если пользователь не хочет видеть его, показывая temaplte-unatorization) Но что я хочу, так это сделать это представление невидимым .
это как те :
{% if perms.app2_name.is_privilgeuser_login_required %}
#code...
{% endif %}
-> не работает
Я не знаю, можно ли это применить, спасибо заранее.