gpt4 book ai didi

python - 在 Django ManyToManyField 中对用户进行排序

转载 作者:太空宇宙 更新时间:2023-11-03 15:35:40 26 4
gpt4 key购买 nike

我有一个具有 ManyToManyField 用户的模型:

models.py

class Excuse(models.Model):
students = models.ManyToManyField(User)
reason = models.CharField(max_length=50)

views.py

def excuse_list(request, block_id=None):
queryset = Excuse.objects.all().prefetch_related('students')
context = {
"object_list": queryset,
}
return render(request, "excuses/excuse_list.html", context)

模板 (excuse_list.html)

...
{% for excuse in object_list %}
<tr>
<td>{{ excuse.reason }}</td>
<td>
{% for student in excuse.students.all %}
{{student.get_full_name}};
{% endfor %}
</td>
</tr>
{% endfor %}
...

如何按用户字段的字母顺序对用户集 (excuse.students.all) 进行排序,例如:user.last_name?

最佳答案

您只需更改 views.py 即可做到这一点:

queryset = Excuse.objects.all().prefetch_related(
Prefetch('students', queryset=User.objects.order_by('lastname')))

remember to import User model!

关于python - 在 Django ManyToManyField 中对用户进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42544843/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com