A debug toolbar for FastAPI.
Project description
Welcome to FastAPI-Toolbar
Original work: https://github.com/mongkok/fastapi-debug-toolbar
Installation
pip install fastapi-toolbar
Quickstart
Add DebugToolbarMiddleware
middleware to your FastAPI application:
from debug_toolbar.middleware import DebugToolbarMiddleware
from fastapi import FastAPI
app = FastAPI(debug=True)
app.add_middleware(DebugToolbarMiddleware)
SQLAlchemy
Please make sure to use the "Dependency Injection" system as described in the FastAPI docs and add the SQLAlchemyPanel
to your panel list:
If you're using a database session generator (using yield
), please add the full python path of your generators
on the session_generators
options, when adding the middleware:
# database.py
from typing import Generator
from sqlalchemy import create_engine
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy.orm import sessionmaker
engine = create_engine("sqlite://", connect_args={"check_same_thread": False})
SessionLocal = sessionmaker(bind=engine)
Base = declarative_base()
Base.metadata.create_all(bind=engine)
def get_db() -> Generator:
db = SessionLocal()
try:
yield db
finally:
db.close() # sqlite will drop tables in memory
Base.metadata.create_all(bind=engine) # create tables again
# app.py
from fastapi import FastAPI
from debug_toolbar.middleware import DebugToolbarMiddleware
app = FastAPI()
app.add_middleware(
DebugToolbarMiddleware,
panels=["debug_toolbar.panels.sqlalchemy.SQLAlchemyPanel"],
session_generators=["database:get_db"] # Add the full python path of your session generators
)
Tortoise ORM
Add the TortoisePanel
to your panel list:
from fastapi import FastAPI
from debug_toolbar.middleware import DebugToolbarMiddleware
app = FastAPI()
app.add_middleware(
DebugToolbarMiddleware,
panels=["debug_toolbar.panels.tortoise.TortoisePanel"],
)
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
fastapi-toolbar-1.0.1.tar.gz
(31.6 kB
view hashes)
Built Distribution
Close
Hashes for fastapi_toolbar-1.0.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ea459e85414de889b06879d22dc8f5b2032cb44a006499c105a4ae977f9f8742 |
|
MD5 | 286d1bbcedd36e46b8be53dd911e55f4 |
|
BLAKE2b-256 | c46fd585daa529a3f21f37868203a1f50b1407927fe763f3a07acdea1f59fbd2 |