一、说明
在今天学习RuoYi-Vue3-FastAPI的代码过程中,我遇到了几个问题,下面说说自己的感想
二、自定义的log装饰器
源码中是log_annotation.py,代码也没什么好说的,这个知识点到处都是文章,可以在csdn上搜索学习,python中wraps函数用法详情_python @wraps函数-CSDN博客https://blog.csdn.net/weixin_44799217/article/details/126170313?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522171314428516800213066157%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=171314428516800213066157&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~sobaiduend~default-2-126170313-null-null.142%5Ev100%5Econtrol&utm_term=%40wraps%28func%29&spm=1018.2226.3001.4187
主要就是wraps的用法,大家看看就ok了
三、自定义的pydantic装饰器as_query as_form
FastAPI从入门到实战(2)——Pydantic模型_fastapi pydantic-CSDN博客https://blog.csdn.net/qq_45730223/article/details/128069420?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522171314582816800213094097%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=171314582816800213094097&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~first_rank_ecpm_v1~rank_v31_ecpm-2-128069420-null-null.142%5Ev100%5Econtrol&utm_term=pydantic%E6%A8%A1%E5%9E%8B%2Bfastapi&spm=1018.2226.3001.4187
主要 学习inspect模块
函数参数检测-inspect模块_函数测参数-CSDN博客https://blog.csdn.net/tlammon/article/details/105462433?ops_request_misc=&request_id=&biz_id=102&utm_term=inspect%E6%A8%A1%E5%9D%97%E7%9A%84%E6%96%87%E6%A1%A3&utm_medium=distribute.pc_search_result.none-task-blog-2~all~sobaiduweb~default-2-105462433.142%5Ev100%5Econtrol&spm=1018.2226.3001.4187那我们就把annotation目录全加进去吧
四、添加一个cache模块
1、添加一个模块过程
- 我们假设数据库已经设计好了
- 数据库好了,那么oo就好了
- 后面还有controller层、server层、dao层、vo entity(根据业务或view来定,起始简单点说就是返回给前端的数据)、各层的关系网上有很多,简单点就是controller层就是前端与后端数据传输层,就像餐厅服务员一样,端来端去的,还会给server层交互;server层是业务处理的,做菜的,数据计算可以放在这里,dao层也叫持久层,和数据库交互的,洗菜的算这里吗?准备食材给做菜的啊?vo entity可以理解为食材都有,但是不在一起,做菜的不好拿,我们把需要的食材放在一起。
- 这几层只要接口文档设计好了,就都很明显的出来了,不就是前端要什么数据我们就给什么吗?前端要什么数据不就是原型设计有吗?
2、创建缓存监控模块对应pydantic模型
mucauna-fastapi/admin/entity/vo/cache_vo.py
3、创建缓存监控模块控制层
mucauna-fastapi/admin/controller/ cache_controller.py
首先我们要学习一下,Depends
参考
FastAPI基础:Depends怎么用?_fastapi depends-CSDN博客https://blog.csdn.net/NeverLate_gogogo/article/details/112472480?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522171316310316800222871946%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=171316310316800222871946&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~sobaiduend~default-1-112472480-null-null.142%5Ev100%5Econtrol&utm_term=Depends&spm=1018.2226.3001.4187
完成以上接口,代码不难,自己看看就行了。
3、创建缓存监控模块服务层
边做controller层,边写server曾
mucauna-fastapi/admin/controller/ cache_server.py