FastAPI+Vue3零基础开发ERP系统项目实战课 20240828上课笔记 第一个接口

news/2024/9/19 0:46:05/ 标签: fastapi, 笔记

遗留的问题

  • 2、Python面向对象:类,对象,方法,继承
  • 3、FastAPI
  • 4、MySQL8
  • 5、SQLModel,和FastAPI框架是同一个作者,两者结合比较好用,但是学习成本较高,使用难度稍大
  • 6、Vue3
  • 7、Tailwindcss
  • 8、Ant Design Vue,UI组件库
  • 9、数据同步:有一个API,这个API提供了一些数据,需要在ERP系统中进行展示。
  • 10、登录注册需要吗?需要
  • 11、第三方平台管理:对接哪些接口平台飞书,钉钉,聚水潭等等
  • 12、用户管理
  • 13、Docker
  • 14、Linux
  • 15、Nginx
  • 16、项目部署实战

循环的嵌套

for i in range(3):print("=")for j in range(3):print("x", end=" ")print()

练习:打印正方形

* * * 
* * *
* * *
for i in range(9):for j in range(9):print("*", end="\t")print()

打印三角形

*
* *
* * *
for i in range(9):for j in range(i + 1):print("*", end="\t")print()

打印九九乘法表

1 x 1 = 1
1 x 2 = 2  2 x 2 = 4
.....
for i in range(1, 10):for j in range(1, i + 1):print(f"{j} x {i} = {i * j}", end="\t")print()

类和对象

什么是方法

特定功能的代码块。

什么是类

特定方法的集合。一个类上,可以有很多个方法,这些方法用来解决同一类问题。

类的还有属性的概念,比如人类,都有名字,身高,年龄,体重。

比如猫类,动物类,狗类,手机类。

可以理解成,类就是生活中,具体事务的抽象。

什么是对象

根据类创建的具体实例。比如用户类,我们从用户类上可以创建出具体的用户,比如张三。张三就是用户类的对象,用户类是张三的所属类。

什么是继承

继承遗产,孩子会拥有父亲的所有东西。

子类继承父类,子类会拥有父类的所有东西。比如动物类有走路的方法,吃的方法。然后猫类是动物动物类,猫类会自动继承动物类的走路的方法,吃的方法。

简单的语法

class Animal:def walk(self):print("走路")def eat(self):print("吃")class Cat(Animal):passcat = Cat()
cat.walk()
cat.eat()

第一个FastAPI程序

官方文档:https://fastapi.tiangolo.com/zh/

FastAPI 是一个用于构建 API 的现代、快速(高性能)的 web 框架,使用 Python 并基于标准的 Python 类型提示。

关键特性:

快速:可与 NodeJS 和 Go 并肩的极高性能(归功于 Starlette 和 Pydantic)。最快的 Python web 框架之一。

高效编码:提高功能开发速度约 200% 至 300%。*

更少 bug:减少约 40% 的人为(开发者)导致错误。*
智能:极佳的编辑器支持。处处皆可自动补全,减少调试时间。
简单:设计的易于使用和学习,阅读文档的时间更短。
简短:使代码重复最小化。通过不同的参数声明实现丰富功能。bug 更少。
健壮:生产可用级别的代码。还有自动生成的交互式文档。
标准化:基于(并完全兼容)API 的相关开放标准:OpenAPI (以前被称为 Swagger) 和 JSON Schema。

安装

pip install "fastapi[all]"

第一个接口

from fastapi import FastAPIapp = FastAPI()@app.get("/")
async def root():return {"message": "Hello World"}if __name__ == '__main__':import uvicornuvicorn.run(app, host='0.0.0.0', port=8888)

async是异步方法,类似于多进程概念,能够让接口的处理更加的高效,也就是所谓的高并发。

@app.get(“/”) 定义接口的访问的地址和访问方式。

  • get:表示GET请求
  • / 表示的访问路径,也就是根路径

遗留的问题

  • 3、FastAPI
  • 4、MySQL8
  • 5、SQLModel,和FastAPI框架是同一个作者,两者结合比较好用,但是学习成本较高,使用难度稍大
  • 6、Vue3
  • 7、Tailwindcss
  • 8、Ant Design Vue,UI组件库
  • 9、数据同步:有一个API,这个API提供了一些数据,需要在ERP系统中进行展示。
  • 10、登录注册需要吗?需要
  • 11、第三方平台管理:对接哪些接口平台飞书,钉钉,聚水潭等等
  • 12、用户管理
  • 13、Docker
  • 14、Linux
  • 15、Nginx
  • 16、项目部署实战

http://www.ppmy.cn/news/1519459.html

相关文章

nerf论文代码理解

近年来,生成式AI(AGI)快速发展,各类生成式模型层出不群,但我更觉得具有物理意义的生成式AI将是未来革命性技术。因此也在抽空看看关于三维重建的知识,这篇文章就是记录我对nerf的理解。 一、论文理解 首先,需要知道ne…

如何防范ddos 攻击

防护DDoS(分布式拒绝服务)攻击是一个复杂且多方面的任务,需要综合考虑网络架构、硬件设备、软件配置以及安全策略等多个方面。以下是一些主要的防护DDoS攻击的方法: 1. 流量清洗(Traffic Scrubbing) 定义…

Spring AOP切面类的封装与解析

Spring AOP切面类的封装与解析 一、引言 在软件开发中,随着系统复杂度的增加,代码中会频繁出现一些横切关注点(Cross-cutting Concerns),如日志记录、安全认证、事务管理等。这些关注点并非业务逻辑的一部分&#xf…

Java笔试面试题AI答之面向对象(10)

文章目录 55.解释Java可以覆盖静态方法吗?如果我在子类中创建相同的方法会有编译时错误吗?56.解释为什么Java不支持运算符重载?57.实现Java写一个Singleton案例 ?58.简述如何使用Java实现内部类 ?实现内部类的基本语法…

django外键表查询存储删除

查询 之前用get 现在用filter,get返回对象,filter返回列表django model的get和filter方法的区别_django模型objects.get-CSDN博客 存储 删除

django外键表查询

Django外键(ForeignKey)操作以及related_name的作用-CSDN博客 django模型中外键操作_django的model的contain外键-CSDN博客 通过基本表可以查外键表 删基本表可以删外键表

神策埋点 sensorsdata.es6.min.js、sensorsdata.min.js 触发eslint 语法检查,导致打包不成功

问题描述: 在使用神策埋点时,下载的web js sdk,打包时eslint 语法检查,会导致打包不成功。npm start没问题。 主要错误是: Line 1:204272: Expected an assignment or function call and instead saw an expression …

自治系统与局域网的区别

自治系统与局域网在本质上有明显的区别。‌ 自治系统(AS)是一个有权自主地决定在本系统中应采用各种路由协议的小型单位,它是一个单独的可管理的网络单元,可以是一个简单的网络也可以是一个由一个或多个普通的网络管理员来控制的…

搜维尔科技:‌XSENS高精度惯性动作捕捉系统,人形机器人Al训练专用设备

为人型机器人提供高质量人体运动数据 , 让人型机器人的运动更真实 、更自然! Xsens惯性动作捕捉系统 Xsens惯性动作捕捉系统是一套由惯性传感器驱动的可穿戴式的全身动作捕捉系统,可精确捕捉人体运动中的各种精细动作,Xsens惯性动作捕捉系统拥有穿戴方…

【JUC】09-线程等待与唤醒

1. Object wait和notify实现等待与唤醒 没有锁会报错。 public class demo01 {public static void main(String[] args) {Object objectLock new Object();new Thread(()->{synchronized (objectLock) {try {// 释放当前锁, 等待notify, 必须先使用wait才能使用notifyobj…

fpga图像处理实战-双线性插值算法

FPGA实现 `timescale 1ns / 1ps // // Company: // Engineer: // // Create Date: 2024/08/29 19:10:23 // Design Name: // Module Name: image_line_buffer // Project Name: // Target Devices: // Tool Versions: // Description: // // Dependencies: // // Re…

Docker使用指南:从入门到实践

Docker是一种开源的容器化技术,旨在为开发人员和系统管理员提供一种轻量级、可移植的环境,以便于应用程序的开发、部署和运行。通过Docker,你可以将应用程序及其依赖项打包在一个可移植的容器中,并在任何环境中一致地运行。本文将…

七. 部署YOLOv8检测器-load-save-tensor

目录 前言0. 简述1. 案例运行2. 补充说明3. 代码分析3.1 main.cpp3.2 create_data.py 结语下载链接参考 前言 自动驾驶之心推出的 《CUDA与TensorRT部署实战课程》,链接。记录下个人学习笔记,仅供自己参考 本次课程我们来学习课程第六章—部署分类器&…

kali——nikto的使用

目录 前言 使用方法 查看帮助(--help) 常规扫描(-h) 指定端口扫描(-h -p) 目录猜解(-h -C) 扫描敏感目录(-h) 保存扫描信息 前言 linux自带的nikto工…

PDF-Extract-Kit提取PDF数据

链接: https://github.com/opendatalab/PDF-Extract-Kit 记录一下 首先是clone该项目, 然后新建一个虚拟环境 进入环境,进入项目 https://github.com/opendatalab/PDF-Extract-Kit?tabreadme-ov-file#installation-guide 如果报错没有PIL…

【HarmonyOS NEXT开发】鸿蒙开发环境准备,ArkTS基础语法入门

文章目录 鸿蒙开发环境准备,ArkTS基础语法入门大纲简介DevEco Studio简介运行环境要求 安装与配置开发工具下载Harmony OS 和 OpenHarmony 的区别Previewer汉化插件的配置 ArkTS基础快速入门1. 解释说明2. 变量与常量3. 变量命名规则4. 数组5. 函数定义函数调用函数…

19. 排序dataframe:掌握这些技巧,让你的数据更有序

哈喽,大家好,我是木头左! 使用sort_values()函数进行排序 Pandas库提供了sort_values()函数,用于对dataframe进行排序。该函数的基本语法如下: df.sort_values(by, axis0, ascendingTrue, inplaceFalse, kindquickso…

C语言典型例题58

《C程序设计教程&#xff08;第四版&#xff09;——谭浩强》 例题4.10 求100~200中的全部素数。 代码&#xff1a; //《C程序设计教程&#xff08;第四版&#xff09;——谭浩强》 //例题4.10 求100~200中的全部素数。#include <stdio.h> #include <math.h>int m…

k8s ingress-nginx

ingress-nginx 基于域名7层代理 1.安装 # 仓库下载 helm repo add ingress-nginx https://kubernetes.github.io/ingress-nginx helm pull ingress-nginx/ingress-nginx# 导入ningress-nginx [rootmaster 2、ingress-nginx]# tree -l . ├── chart │ └── ingress-ng…

jsmn输出

对应c程序&#xff1a; #include <stdio.h> #include <stdlib.h> #include <string.h> #include "jsmn.h"#define my_printf(format, ...) printf(format, ##__VA_ARGS__) //#define my_printf(format, ...) typedef unsigned char uint8_t; typed…