# fastapi_base_project **Repository Path**: ktianc/fastapi_base_project ## Basic Information - **Project Name**: fastapi_base_project - **Description**: FastAPI 基础项目 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 2 - **Created**: 2021-10-20 - **Last Updated**: 2024-02-04 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # FastAPI 示例项目 FastAPI 基础教程:https://gitee.com/ktianc/fastapi_base.git 使用技术: - Mysql(客户信息增删改查功能) - WebSocker(聊天室功能) - Redis ![image-20230504165830985](D:\ktianc\private\fastapi_base_project\images\image-20230504165830985.png) ## 项目结构 使用的是仿照 Django 项目结构: fastapi_base_project - alembic:ORM模型迁移 - application:主项目配置目录,也存放了主路由文件 - settings.py:主项目配置文件 - urls.py:主路由文件 - apps:项目的app存放目录 - chat:聊天室应用 - customer:客户管理应用 - models:ORM 模型目录 - schemas:序列化文件 - crud.py:数据库增删改查操作文件 - views.py:路由操作文件 - tasks:后台任务(目前没维护) - core:核心文件目录 - db:ORM模型基类 - logs:日志目录 - static:静态资源存放目录 - utils:自定义的一些工具类目录 - main.py:主程序入口文件 - alembic.ini:ORM模型迁移配置文件 ## 使用 ``` # 拉取代码 git clone https://gitee.com/ktianc/fastapi_base_project.git cd fastapi_base_project/ # 安装依赖库 pip3 install -r requirements.txt -i https://mirrors.aliyun.com/pypi/simple/ # 第三方源: 1. 阿里源: https://mirrors.aliyun.com/pypi/simple/ ``` ## 运行启动 ``` # 进入项目文件夹下 cd fastapi_base_project/ # 运行启动项目 python main.py ``` 在线文档地址(在配置文件里面设置路径或者关闭) ``` http://127.0.0.1:8000/docs ``` 这时 `customer` 下需要使用数据库的接口还不能使用,如果需要使用则需要配置对应数据库。 ## 配置数据库环境 配置文件:`application/settings.py` ``` # 以下启用则改为True # 数据库配置项 SQLALCHEMY_DATABASE_ENABLE = False SQLALCHEMY_DATABASE_URL = "mysql+asyncmy://数据库用户名:数据库密码@数据库地址:数据库端口/数据库名称" # Redis 数据库配置项 REDIS_DB_ENABLE = False REDIS_DB_URL = "redis://:密码@地址:端口/数据库" ``` ## Mysql 启用后需要执行迁移表 ``` # 第一次迁移表 alembic revision -m "first" # 通过该命令可以将模型迁移到数据库 alembic upgrade head # 修改表结构 alembic revision --autogenerate -m "update" # --autogenerate参数可以对字段做增删改 # -m 添加注释 # 通过该命令可以将模型迁移到数据库 alembic upgrade head ```