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

Django模型choices字段触发fields.E005错误,请求解决方法

问题分析与解决

首先注意到错误信息指向的是asosiy.Universitet.yillik字段,而非你贴出的Nomzod模型代码——当前Nomzod里的jins字段的choices定义是符合Django要求的,无需修改。

Django抛出的fields.E005错误,核心是yillik字段的choices不符合规范,需按以下方式排查修复:

  • 检查Universitet模型中yillik字段的choices定义:
    • 必须是列表或元组类型,每个元素都是**(实际存储值, 人类可读名称)**的二元元组,示例:
      YILLIK_CHOICES = [
          ("1", "1-yil"),
          ("2", "2-yil"),
          # 补充其他年份选项
      ]
      yillik = models.CharField(max_length=10, choices=YILLIK_CHOICES)
      
    • 若yillik是IntegerField,则元组第一个元素需为整数类型,比如(1, "1-yil")而非字符串
  • 排查拼写错误:确认字段参数是choices而非choice,或是否引用了非可迭代的变量作为choices值

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.05 08:31:04