升级Python与Poetry版本后使用strawberry-gql出现AttributeError问题求助
升级Python与Poetry版本后使用strawberry-gql出现AttributeError问题求助
嗨,我来帮你解决这个问题~
你遇到的这个错误确实是因为strawberry-gql里的pydantic集成模块位置发生了变化:它已经从experimental(实验性模块)正式移到了核心模块里,不再属于experimental的子模块了。
给你几个具体的解决步骤:
首先修改代码写法:
把原来的@strawberry.experimental.pydantic.type(model=DsccError, all_fields=True)改成
@strawberry.pydantic.type(model=DsccError, all_fields=True)对应的导入语句如果有引用
strawberry.experimental.pydantic的地方,也要同步改成strawberry.pydantic。然后检查并更新strawberry版本:
这个模块位置的变更是strawberry版本迭代中的正式化调整,你可以通过Poetry更新到适配Python 3.9的最新稳定版,执行命令:poetry update strawberry-gql这样能确保你使用的strawberry版本已经包含了这个调整。
最后验证依赖一致性:
因为你升级了Python和Poetry版本,建议重新生成锁定文件(poetry lock --no-update),确保所有依赖都和当前Python版本兼容,避免出现其他隐性的版本冲突问题。
如果按照上面的步骤调整后还是有问题,可以检查一下你的pyproject.toml里是否锁定了过旧的strawberry版本,要是有的话,把版本限制放宽到符合Python 3.9的稳定版本范围即可。
备注:内容来源于stack exchange,提问作者user9920500
相关产品推荐
相关产品推荐

