Django模型中的有序列表

Django模型中的有序列表,django,models,Django,Models,我有一个Django项目,我希望一个模型包含另一个模型的对象的有序列表。如果我理解正确,列表通常是用外键完成的,外键从包含的对象指向包含的对象。但是,如果我这样做,我会确保维护对象的顺序(我在管理面板中添加它们的顺序)吗?什么决定了他们的内部秩序 此外,如果带有外键的元素是无序的,我如何在Django模型中创建有序列表?您可以在模型的元选项中指定要排序的字段 看 如果需要在不同查询中按不同字段排序,则可以在单个查询集中覆盖order_by 看 如果要根据时间戳(例如,当它们被添加到数据库中时)对

我有一个Django项目,我希望一个模型包含另一个模型的对象的有序列表。如果我理解正确,列表通常是用外键完成的,外键从包含的对象指向包含的对象。但是,如果我这样做,我会确保维护对象的顺序(我在管理面板中添加它们的顺序)吗?什么决定了他们的内部秩序


此外,如果带有外键的元素是无序的,我如何在Django模型中创建有序列表?

您可以在模型的元选项中指定要排序的字段

如果需要在不同查询中按不同字段排序,则可以在单个查询集中覆盖order_by


如果要根据时间戳(例如,当它们被添加到数据库中时)对它们进行排序,则可以在元选项中指定此项。

如果需要,可以添加一个字段,在创建对象时自动存储日期时间,并带有auto_now_add属性,如以下示例所示:

creation_date = models.DateTimeField('Date', auto_now_add=True)
然后,您可以使用Meta属性按此字段在数据库中排序:

    class Meta:
        ordering = ('creation_date',)

首先,只问1个问题,它们将按照您添加到新模型表中的顺序出现,尽管它们在原始表中的顺序不同。因此,新表将按照您创建的顺序包含行,这些行包含对另一个表中另一行的引用