面包屑动态内容

Breadcrumb dynamic content

我有一个简单的面包屑,效果很好。但我想添加一个功能,每个

  • 标签将根据用户组显示。

    因此,如果用户在组 sample1 中,则面包屑中只会显示 sample1 标签。 此外,如果用户在 sample1 和 sample2 组中,则两个标签都会出现。

    所以我需要这样的东西:

    def bc(request):
        user_groups = request.user.groups.all()
        context = {'user_groups': user_groups}
    
        return render(request, 'opportunity/opp_breadcrumb.html', context)
    

    opp.breadcrumb.html :

    <ul id="bread" class="breadcrumb">
        {% for group in user_groups %}
            {% if group.name == 'Sample1' %}   
                <li class="breadcrumb-item"><a href="{% url 'opportunity:sample1' %}">Sample1</a></li>
            {% elif group.name == 'Sample2' %}
                <li class="breadcrumb-item"><a href="{% url 'opportunity:sample2' %}">Sample2</a></li>
            {% elif group.name == 'Sample3' %}
                <li class="breadcrumb-item"><a href="{% url 'opportunity:sample3' %}">Sample3</a></li>
            {% elif group.name == 'Sample4' %}
                <li class="breadcrumb-item"><a href="{% url 'opportunity:sample4' %}">Sample4</a></li>
            {% endif %}
        {% endfor %}
    
        <div class="ml-auto">
            <li style="margin-right: 20px">
                <a href="{% url 'opportunity:pdf' %}" target="_blank">
                    <i class="fa fa-file-pdf-o" aria-hidden="true"></i>
                </a>
            </li>
        </div>
        <li class=" breadcrumb-item" style="margin-right: 20px"><a
                href="{% url 'opportunity:sample5' %}">Sample 5</a></li>
    </ul>
    

    但如您所想,这个逻辑根本行不通。

  • 我犯了一个错误,我试图将 user_groups 渲染到错误的模板。由于我的 opp_breadcrumb.html 包含在我的主模板中,我应该只在那里渲染它而不是使用 bc 视图。