快速创建基于FastAPI的后端项目的脚手架工具
Project description
脚手架工具使用说明
scaffold.py 是一个用于快速创建基于FastAPI-Backend-Template的新项目的脚手架工具。
使用方法
基本用法
最简单的用法是直接运行脚本,使用默认配置:
python scaffold.py my-project
这将在当前目录下创建一个名为 my-project 的新项目。
命令行选项
脚手架工具支持以下命令行选项:
usage: scaffold.py [-h] [--db-user DB_USER] [--db-password DB_PASSWORD] [--db-name DB_NAME]
[--db-host DB_HOST] [--db-port DB_PORT] [--skip-venv] [--output-dir OUTPUT_DIR]
[project_name]
FastAPI Backend Template 脚手架工具
位置参数:
project_name 项目名称 (默认: fastapi-backend)
可选参数:
-h, --help 显示帮助信息并退出
--db-user DB_USER 数据库用户名 (默认: root)
--db-password DB_PASSWORD
数据库密码 (默认: password)
--db-name DB_NAME 数据库名称 (默认: 项目名称转换为下划线形式)
--db-host DB_HOST 数据库主机 (默认: localhost)
--db-port DB_PORT 数据库端口 (默认: 3306)
--skip-venv 跳过创建虚拟环境和安装依赖
--output-dir OUTPUT_DIR
输出目录 (默认: 当前目录下以项目名称命名的文件夹)
示例
- 创建自定义数据库配置的项目:
python scaffold.py my-project --db-user myuser --db-password mypass --db-name custom_db
- 指定输出目录:
python scaffold.py --output-dir /path/to/projects/my-project
- 跳过虚拟环境创建:
python scaffold.py my-project --skip-venv
脚手架工具功能
脚手架工具执行以下操作:
- 复制模板文件到新的项目目录
- 更新项目名称和相关配置
- 创建包含随机生成密钥的
.env配置文件 - 生成
README.md文件 - 创建虚拟环境并安装依赖(除非指定
--skip-venv)
项目结构
创建的项目具有以下结构:
my-project/
├── .env # 环境变量配置
├── README.md # 项目文档
├── backend/ # 后端代码
│ ├── app.py # 应用入口点
│ ├── requirements.txt# 依赖列表
│ └── src/ # 源代码
│ ├── api/ # API路由与控制器
│ ├── config/ # 配置
│ ├── models/ # 数据模型
│ ├── repository/ # 数据库交互
│ ├── securities/ # 安全相关
│ └── utilities/ # 工具函数
└── venv/ # 虚拟环境 (如果未指定--skip-venv)
使用创建的项目
-
进入项目目录:
cd my-project
-
激活虚拟环境:
# Windows venv\Scripts\activate # Linux/Mac source venv/bin/activate
-
启动服务:
cd backend python app.py
-
访问API文档:http://localhost:8000/docs
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file fastapi_backend_template-0.1.5.tar.gz.
File metadata
- Download URL: fastapi_backend_template-0.1.5.tar.gz
- Upload date:
- Size: 49.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d17304b026aaa9dd81a76642700d8ac9648f82fb8667ec4657235a6d5eead5b0
|
|
| MD5 |
d86650cb79e8f49dcafa3c13a9985e45
|
|
| BLAKE2b-256 |
91ea81314994ea8bb6012d59514d810553e49bc8df95e056d6a3b826de4b46ff
|
File details
Details for the file fastapi_backend_template-0.1.5-py3-none-any.whl.
File metadata
- Download URL: fastapi_backend_template-0.1.5-py3-none-any.whl
- Upload date:
- Size: 68.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
743f8df5c4aaab24c75de1722d34867cf93ab632b725a622a7f02477ef1c675b
|
|
| MD5 |
cf4d40f56c29ad68bb401691430a3264
|
|
| BLAKE2b-256 |
2a5e84a6c46f314a7793fc05bcabf0bb5e1b1bbf86b76d0a155b9a6f19e8a062
|