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

使用Django-Graphene查询提示shop_addresscountry关系不存在如何解决

报错核心说明

你新增GraphQL支持后执行查询返回的报错,核心原因是当前连接的数据库中不存在shop_addresscountry关系表,完整报错信息如下:

{
  "errors": [
    {
      "message": "relation \"shop_addresscountry\" does not exist\nLINE 1: ... \"shop_addresscountry\".\"is_shipping_country\" FROM \"shop_addr...\n                                                             ^\n"
    }
  ],
  "data": {
    "allAddresscountry": null
  }
}

可按以下方向排查解决:

  • 检查模型表名配置:打开AddressCountry对应的Django模型定义,检查Meta子类下的db_table字段是否设置为shop_addresscountry,确认没有拼写、大小写、前后缀错误,PostgreSQL对表名大小写敏感,若自定义表名时使用了双引号需严格匹配大小写。
  • 检查迁移执行状态:
    • 执行python manage.py makemigrations,确认新增AddressCountry模型后的变更已经生成了对应的迁移文件,没有遗漏未同步的模型修改
    • 执行python manage.py migrate,确认所有迁移都正常同步到数据库,执行过程没有报错
  • 检查Graphene Schema定义:确认查询对应的DjangoObjectType绑定的是正确的AddressCountry模型类,没有绑定错其他模型,也没有自定义Resolver逻辑里硬编码了错误的表名
  • 检查数据库连接一致性:确认当前运行Django服务的数据库配置,和执行migrate命令时使用的配置一致,没有出现连错开发库/测试库的情况,可直接登录数据库执行PostgreSQL命令\dt shop_*查看当前库下所有shop前缀的表,确认shop_addresscountry是否真实存在

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.04 07:15:05