首页 > 解决方案 > {% request.user ==" "%} 检查用户并使用 if else Django Templatetag 呈现 html 元素

问题描述

html代码:

            {% if request.user== "Sangam" %}
                <li class=""> <a class="text-left " href="landscapes.html" role="button" aria-haspopup="true"
                    aria-expanded="false"><i class="flaticon-bar-chart-1"></i> Landscape </a>
                </li>
             {% endif %} 

             {% if request.user  == "Sam" %}
            <li class=""> <a class="text-left " href="characters.html" role="button" aria-haspopup="true"
                aria-expanded="false"><i class="flaticon-bar-chart-1"></i> Characters </a>
            </li>
             {% endif %} 

我想做的是,如果用户是 Sangam,那么只为他呈现某个 html 元素。但是,它不会这样渲染。我可以这样做吗?另外,我想知道我们如何将某些 html 元素呈现给我们已经将他/她列出到 Django-admin 面板中的某个组的用户

标签: pythondjango

解决方案


您需要比较.username登录用户的:

{% if request.user.username == "Sangam" %}
    <li class=""> <a class="text-left " href="landscapes.html" role="button" aria-haspopup="true" aria-expanded="false"><i class="flaticon-bar-chart-1"></i> Landscape </a></li>
{% endif %}

{% if request.user.username == "Sam" %}
    <li class=""><a class="text-left " href="characters.html" role="button" aria-haspopup="true" aria-expanded="false"><i class="flaticon-bar-chart-1"></i> Characters </a></li>
{% endif %}

推荐阅读