为了账号安全,请及时绑定邮箱和手机立即绑定

高性能 FastAPI 框架入门精讲

最新回答 / duskash
可以贴一下 database.py, models - > City 类, schema -> CreatedCity 类, curd -> create_city 函数这四个部分的代码, 感觉可能是哪个环节没有对上. 另外 sqlalchemy 版本是? 我这里比较新的 1.14 版本和教程里的一些操作不兼容

最新回答 / weixin_慕尼黑0446100
一般都是import的依赖或者路径的问题,或者是名字写错了,要看代码才知道下载视频          

最新回答 / 慕粉2012913
是的,我觉得应该是作者当时打代码太急了打错了,你写的那个是对的。 

最新回答 / duskash
我来推荐一个orm 库, tortoise-orm这个支持异步操作 sqlite3、mysql、postgresql 三种数据库, 配置和部署都比 sqlalchemy 简单你说的这个问题, tortoise-orm 里面可以在初始化数据库的时候<...code...> 到这里, 后面的 `connection1` 等就可以用 orm 操作了

最赞回答 / duskash
这个问题搞了我一晚上, 终于找到问题出在哪了……<...code...>这段代码里, 当 city 没有值的时候, 是走下面一条, 注意到最后一行有一个 .all() 这个方法会传回真实数据的 list反观 if 为真的时候, 结尾没有 .all(), 这个时候返回的是一个 Query, 不是 list, 自然也无法被 fastapi 转为有意义的输出, 就报错了. 我是加上 .all() 之后, 就可以正常跑了

最赞回答 / duskash
新版本的 sqlalchemy 丢弃了 __mappter_args__ 当中设置的方法应当用 db.query().order_by() 直接在 Query 对象后面显示地调用 order_by 函数这节课里, 有一张 City 表 和一张 Data 表, 对应的 crud 方法里面db.query(models.City).order_by(models.City.province).offset().limit().all()db.query(models.Data).order_by(models...

最新回答 / 虾叔叔
limit: int = None是将None以int形式赋值给limit,可能会报错limit: Optional[int] = None是将默认值设置为 None 来声明可选查询参数

最赞回答 / OneIsAll_
改成这样:
return db.query(models.Data).join(models.City).filter(models.City.province == city).all()
课程须知
任何想学习Python开发的同学,尤其是需要高效率完成高并发、高性能项目的同学都可以学习
老师告诉你能学到什么?
FastAPI 框架特性及性能优势 如何定义各种请求参数和验证 模板渲染和静态文件配置 FastAPI 的表单数据处理 全面学习 FastAPI 依赖注入系统 FastAPI 的安全、认证和授权 大型工程应该如何目录结构设计 FastAPI 的中间件开发方法和规范 跨域资源共享的原理和实现方式

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消