无需使其过于复杂:
<div class="col-3">
{% if flag %}
<a class="btn btn-primary" href="{% url 'home' %}" data-toggle="tooltip" data-placement="top" title="Hide Completed Tasks"><i class="fas fa-eye"></i></a>
{% else %}
<a class="btn btn-primary" href="{% url 'hide' %}" data-toggle="tooltip" data-placement="top" title="Hide Completed Tasks"><i class="fas fa-eye-slash"></i></a>
{% endif %}
</div>
现在在视图函数中放入一个变量,并将var添加到呈现的字典中:
def home(request):
tasks = Task.objects
flag = False
return render(request, 'home/home.html', {'tasks': Task.objects.all().order_by('-pub_date'), 'flag':flag})
def hide(request):
tasks = Task.objects
flag = True
return render(request, 'home/home.html', {'tasks': Task.objects.all().order_by('-pub_date').filter(completed=False), 'flag':flag})