我有 2 个模型类别和项目。项目具有对类别的引用。
class Category(models.Model):
name = models.CharField(max_length=32)
class Item(model.Models):
name = models.CharField(max_length=32)
category = models.ForeignKey(Category)
sequence = models.IntegerField()
序列字段应该捕获类别中项目的序列。
我的问题是: 我需要在类别和/或项目上设置哪些元选项,以便当我这样做时:
category.item_set.all()
我得到的项目按其序列号排序。
PS:我现在知道一个名为 ordering_with_respect_to 的元选项..但仍不清楚它是如何工作的,而且我在序列列中有遗留数据。如果正确的方法需要的话,我对数据迁移持开放态度。
最佳答案
您正在寻找的是:
class Item(model.Models):
name = models.CharField(max_length=32)
category = models.ForeignKey(Category)
sequence = models.IntegerField()
class Meta:
ordering = ['sequence',]
这将确保Item
始终按序列
排序。
关于django - 在 Django 中对相关对象进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6099370/