我想先显示status=True的卡,那么我如何在我的views.py
或template
中按状态排列它
这是我的views.py
:
def myItem(request):
context = {}
if Item.objects.filter(status=True).exists():
context['data'] = Item.objects.all()#here i am taking all data but i want to arrange it so that which data have status=True will come first.
else:
context['data'] = Item.objects.all()
context['data_false'] = True
return render(request,'frontend/myeoffice.html',context)
下面是我的Template
:
{% for i in data %}
{% if i.status %}
<div class="col-xl-4">
<div class="card shadow-sm p-4">
<div class="card-header p-0 text-center">
<h2 class="title">{{i.name}}</h2>
</div>
<div class="content text-break p-2">
<p class="copy">{{i.description|truncatechars:100}}</p>
</div>
<div class="card-footer text-left p-0">
<button class="btn btn-primary m-3">View</button>
</div>
</div>
</div>
{% else %}
<div class="col-xl-4">
<div class="card shadow-sm p-4" data-toggle="modal" data-target=".bd-example-modal-lg" style="background: #ccc;">
<div class="card-header p-0 text-center">
<h2 class="title">{{i.name}}</h2>
</div>
<div class="content text-break p-2">
<p class="copy">{{i.description|truncatechars:100}}</p>
</div>
<div class="card-footer text-left p-0">
<button class="btn btn-primary disabled m-3" data-toggle="modal" data-target=".bd-example-modal-lg">
View
</button>
</div>
</div>
</div>
{% endif %}
{% endfor %}
注意:我想要status=False和status=True的数据,但顺序应该是True在前,False在后
2条答案
按热度按时间83qze16e1#
您希望对查询执行此操作,以获取status为True的结果中的第一个结果。
这将为您提供具有此状态的第一个结果。或者,如果您想要所有结果并按状态排序,请执行以下操作:
xcitsw882#
您可以通过order函数排列结果:
-status
中的-
用于颠倒顺序。