示例程序 Entry Point
环境准备:
1、首先,需要创建一个虚拟环境和 FastAPI。
conda create -n fastapi
# 进入虚拟环境
conda activate fastapi
# 安装相关依赖
conda install fastapi
conda install gunivorn
2、新建 main.py
作为入口文件
from fastapi import FastAPI
# initailize FastApi instance
app = FastAPI()
# define endpoint
@app.get("/")
def home():
return {"Ahoy": "Captain"}
3、当前目录命令行执行 uvicorn main:app --reload
- main 指的是入口点的名称
- app 指的是从
main.py
初始化的 FastAPI 实例 - --reload 是一个标志,它允许服务器在更改项目时重新加载自己
4、访问链接
- http://lcoalhost:8000/(返回 {"Ahoy": "Captain"})
- http://lcoalhost:8000/docs 自动交互式 API 文档(SwaggerUI)
文件结构
fastapi-demo ├── crud.py ├── db.py ├── main.py └── models.py
main.py
初始化 FastAPI 实例:
from fastapi import FastAPI
app = FastAPI()
数据库连接
初始化数据库时,因为我们不会有太多的数据,所以我们将使用 SQLite 作为数据库。SQLite 是一个内置的 python 库,所以我们不需要安装它。
与 Django 不同,FastAPI 没有自己的对象关系映射工具,因此我们将使用 SQLAlchemy。