013、Python+fastapi,第一个后台管理项目走向第13步:建立python+fastapi项目,创建cache模块

本文主要是介绍013、Python+fastapi,第一个后台管理项目走向第13步:建立python+fastapi项目,创建cache模块,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、说明

在今天学习RuoYi-Vue3-FastAPI的代码过程中,我遇到了几个问题,下面说说自己的感想

二、自定义的log装饰器

源码中是log_annotation.py,代码也没什么好说的,这个知识点到处都是文章,可以在csdn上搜索学习,python中wraps函数用法详情_python @wraps函数-CSDN博客icon-default.png?t=N7T8https://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博客icon-default.png?t=N7T8https://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博客icon-default.png?t=N7T8https://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博客icon-default.png?t=N7T8https://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

4、cache取自于redis 没有数据库表,没有vo,没有dao层

5、接口调试

这篇关于013、Python+fastapi,第一个后台管理项目走向第13步:建立python+fastapi项目,创建cache模块的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/937863

相关文章

Python 函数详解:从基础语法到高级使用技巧

《Python函数详解:从基础语法到高级使用技巧》本文基于实例代码,全面讲解Python函数的定义、参数传递、变量作用域及类型标注等知识点,帮助初学者快速掌握函数的使用技巧,感兴趣的朋友跟随小编一起... 目录一、函数的基本概念与作用二、函数的定义与调用1. 无参函数2. 带参函数3. 带返回值的函数4.

Python跨文件实例化、跨文件调用及导入库示例代码

《Python跨文件实例化、跨文件调用及导入库示例代码》在Python开发过程中,经常会遇到需要在一个工程中调用另一个工程的Python文件的情况,:本文主要介绍Python跨文件实例化、跨文件调... 目录1. 核心对比表格(完整汇总)1.1 自定义模块跨文件调用汇总表1.2 第三方库使用汇总表1.3 导

基于Python实现进阶版PDF合并/拆分工具

《基于Python实现进阶版PDF合并/拆分工具》在数字化时代,PDF文件已成为日常工作和学习中不可或缺的一部分,本文将详细介绍一款简单易用的PDF工具,帮助用户轻松完成PDF文件的合并与拆分操作... 目录工具概述环境准备界面说明合并PDF文件拆分PDF文件高级技巧常见问题完整源代码总结在数字化时代,PD

Linux之UDP和TCP报头管理方式

《Linux之UDP和TCP报头管理方式》文章系统讲解了传输层协议UDP与TCP的核心区别:UDP无连接、不可靠,适合实时传输(如视频),通过端口号标识应用;TCP有连接、可靠,通过确认应答、序号、窗... 目录一、关于端口号1.1 端口号的理解1.2 端口号范围的划分1.3 认识知名端口号1.4 一个进程

Python实现Word转PDF全攻略(从入门到实战)

《Python实现Word转PDF全攻略(从入门到实战)》在数字化办公场景中,Word文档的跨平台兼容性始终是个难题,而PDF格式凭借所见即所得的特性,已成为文档分发和归档的标准格式,下面小编就来和大... 目录一、为什么需要python处理Word转PDF?二、主流转换方案对比三、五套实战方案详解方案1:

SpringBoot结合Knife4j进行API分组授权管理配置详解

《SpringBoot结合Knife4j进行API分组授权管理配置详解》在现代的微服务架构中,API文档和授权管理是不可或缺的一部分,本文将介绍如何在SpringBoot应用中集成Knife4j,并进... 目录环境准备配置 Swagger配置 Swagger OpenAPI自定义 Swagger UI 底

idea Maven Springboot多模块项目打包时90%的问题及解决方案

《ideaMavenSpringboot多模块项目打包时90%的问题及解决方案》:本文主要介绍ideaMavenSpringboot多模块项目打包时90%的问题及解决方案,具有很好的参考价值,... 目录1. 前言2. 问题3. 解决办法4. jar 包冲突总结1. 前言之所以写这篇文章是因为在使用Mav

Linux权限管理与ACL访问控制详解

《Linux权限管理与ACL访问控制详解》Linux权限管理涵盖基本rwx权限(通过chmod设置)、特殊权限(SUID/SGID/StickyBit)及ACL精细授权,由umask决定默认权限,需合... 目录一、基本权限概述1. 基本权限与数字对应关系二、权限管理命令(chmod)1. 字符模式语法2.

基于Python Playwright进行前端性能测试的脚本实现

《基于PythonPlaywright进行前端性能测试的脚本实现》在当今Web应用开发中,性能优化是提升用户体验的关键因素之一,本文将介绍如何使用Playwright构建一个自动化性能测试工具,希望... 目录引言工具概述整体架构核心实现解析1. 浏览器初始化2. 性能数据收集3. 资源分析4. 关键性能指

使用Python的requests库调用API接口的详细步骤

《使用Python的requests库调用API接口的详细步骤》使用Python的requests库调用API接口是开发中最常用的方式之一,它简化了HTTP请求的处理流程,以下是详细步骤和实战示例,涵... 目录一、准备工作:安装 requests 库二、基本调用流程(以 RESTful API 为例)1.