L'interrogation des données selon Entry_date de petit à grand peut être écrite comme :
Content.objects.order_by('entry_date')
Trier de grand à petit :
Content.objects.order_by('-entry_date')
Ce qui suit présente d'autres types de tri
Tri aléatoire :
Content.objects.order_by('?')
Mais order_by(?) peut être coûteux et lent, en fonction de la base de données backend.
Trier par champs de la table de relation
class Category(Base): code = models.CharField(primary_key=True,max_length=100) title = models.CharField(max_length = 255) class Content(Base): title = models.CharField(max_length=255) description = models.TextField() category = models.ForeignKey(Category, on_delete=models.CASCADE)
# 按照Category的字段code,对Content进行排序,只需要外键后加双下划线 Content.objects.order_by('category__title') # 如果只是按照外键来排序,会默认按照关联的表的主键排序 Content.objects.order_by('category') # 上面等价于 Content.objects.order_by('category__code') # 双下划线返回的是join后的结果集,而单下划线返回的是单个表的集合 Content.objects.order_by('category_title')
Remarque : Qu'il s'agisse d'un trait de soulignement simple ou d'un double trait de soulignement, nous pouvons utiliser {{ content.category.title } } pour l'obtenir sur le front-end Données des tables associées.
【Tutoriels associés recommandés】
1. "Tutoriel vidéo gratuit de Python"
2 Tutoriel d'introduction de base de Python
3. Application de Python en science des données
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!