You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Django对模型对象升降序排序时报models.E014错误如何解决

错误原因

你在Meta类中定义的ordering属性格式错误,触发了Django的系统校验规则:

  • Django明确要求ordering配置必须是列表或元组类型,就算只对单个字段排序也不能省略容器结构
  • 你写的ordering = ('-created_at')在Python语法中不会被识别为元组:单值加括号且末尾没有逗号时,括号仅作优先级标记,最终这个值的类型是字符串,不符合Django的参数要求。
修复方法

两种写法二选一即可:

  • 保留元组写法,在末尾加逗号标记为单元素元组:
class Meta:
    ordering = ('-created_at',)
  • 改用列表写法,避免单元素元组的语法坑:
class Meta:
    ordering = ['-created_at']

内容的提问来源于stack exchange,提问作者boyenec

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 06:45:03