ORM-修改
本文介绍了使用FastAPI框架开发Python Web应用的优势和基本操作。FastAPI作为现代Python Web框架,具有高性能、直观开发体验和自动文档生成等特点。文章重点演示了如何通过FastAPI实现图书信息的修改功能:首先创建DTO数据模型,然后定义PUT接口实现按ID查询图书、修改价格并提交事务的完整流程。最后通过实际测试验证了功能有效性,展示了FastAPI简洁高效的开发模式。适
欢迎来到FastAPI之旅:探索现代Python Web开发的无限可能!
亲爱的开发者朋友们,大家好!
在这个技术日新月异的时代,Python作为最受欢迎的编程语言之一,不断推陈出新,为我们带来更高效、更优雅的开发体验。而今天,我想与大家一同探索的,正是Python Web开发领域的一颗璀璨新星——FastAPI。
为什么是FastAPI?
如果你曾为API开发的繁琐而烦恼,为文档维护的耗时而困扰,为性能优化的复杂而头疼,那么FastAPI将会是你一直在寻找的解决方案。
FastAPI不仅仅是又一个Web框架,它是基于Python类型提示的现代Web框架,集成了Starlette的高性能和Pydantic的数据验证能力,为我们带来了前所未有的开发体验:
极致的性能:媲美Node.js和Go的表现,让你的应用飞起来
直观的开发:基于Python类型提示,代码即文档,减少40%的人为错误
自动交互文档:开箱即用的Swagger UI和ReDoc,告别手动维护API文档的烦恼
强大的编辑器支持:享受完整的代码补全和类型检查,提升开发效率
生产就绪:内置依赖注入系统、安全认证、CORS等企业级功能
在这趟旅程中,你将收获什么?
在接下来的系列文章中,我将与你一同深入FastAPI的每一个角落:
从零到一:带你搭建第一个FastAPI应用,体验“Hello World”的现代版
深度解析:探索路径操作、请求响应模型、依赖注入等核心概念
实战演练:构建完整的RESTful API项目,涵盖用户认证、数据库集成等实际场景
进阶技巧:WebSocket、后台任务、测试部署等高级主题
生态探索:FastAPI与前端框架、微服务、云原生技术的完美融合
无论你是刚接触Python Web开发的新手,还是已有Flask、Django经验的资深开发者,FastAPI都会为你打开一扇新的大门。它的学习曲线平缓,但所能达到的高度却令人惊叹。
让我们一起启程
技术之美在于分享,成长之乐在于交流。在这趟FastAPI探索之旅中,我不仅会分享知识,更期待与各位开发者朋友的思想碰撞。每一篇文章都将包含详细的代码示例、最佳实践和常见问题解答,确保你能“看得懂、学得会、用得上”。
现代Web开发的世界正在发生深刻变革,而FastAPI正是这场变革中的领航者之一。它不仅仅提高了开发效率,更重新定义了我们对Python Web开发的期待。
准备好了吗?让我们一同踏入这个高效、直观且充满趣味的FastAPI世界,探索现代Python Web开发的无限可能!
你的第一个FastAPI应用,距离你只有一篇文章的距离。
期待在评论区看到你的想法和问题,让我们在技术的道路上,结伴同行,共同成长!
欢迎点赞、收藏、关注,不错过每一篇精彩内容!🚀
目录
具体步骤如下:
一.新增一个dto

二.定义修改图书的接口
注意:
①根据RestFul API接口风格,修改的接口,一般用put请求。
②fastAPI的修改逻辑,和java不一样。fastAPI是先根据要修改的图书的id,把这本书查出来,然后再修改,最后再提交。
@app.put("/book/updateBook/{bookId}")
async def updateBook(bookId: int, dto: BookUpdateDto, db: AsyncSession = Depends(get_database)):
#1.先将要修改的图书查出来
db_book = await db.get(Book, bookId)
#2.如果该书不存在,则返回错误信息
if db_book is None:
raise HTTPException(status_code=404, detail="该图书不存在")
#3.进行修改操作(重新赋值price字段)
db_book.price = dto.price
#4.提交事务
await db.commit()
#5.返回成功结果
return "修改成功!"
三.运行项目,测试效果

去数据库看看,是否真的把id为1的图书的价格修改为了999

可见此时真的修改成功了,那我们的目的达到了。
以上就是本篇文章的全部内容,喜欢的话可以留个免费的关注呦~~~
更多推荐
所有评论(0)