代码之家  ›  专栏  ›  技术社区  ›  Ram Rachum

Django型号订购

  •  0
  • Ram Rachum  · 技术社区  · 14 年前

    我设置了一个 ordering='ordering_number' 我的django模型的元属性,认为django将在比较实例时使用它。( ordering_number 在我的模型中是一个integerfield。)

    例如,如果我有一个实例 a 具有 ordering_number = 4 一个实例 b 具有 ordering_number = 7 ,我希望 a < b 将是 True . 但是,我测试了它,它似乎不起作用。我不明白根据什么逻辑 A & B;B 会变成 .

    有人知道吗?为什么姜戈不使用 ordering 用于元素比较?

    1 回复  |  直到 14 年前
        1
  •  2
  •   Ignacio Vazquez-Abrams    14 年前

    the documentation :

    对象的默认顺序,用于获取对象列表

    所以你的比较不起作用的原因是它们不是这样设计的。定义 __lt__() 等等,定义实例的顺序。