Home / File/ tutorial014_an_py310.py — fastapi Source File

tutorial014_an_py310.py — fastapi Source File

Architecture documentation for tutorial014_an_py310.py, a python file in the fastapi codebase. 5 imports, 0 dependents.

File python FastAPI Routing 5 imports 4 functions 1 classes

Entity Profile

Dependency Diagram

graph LR
  0e2e3c6e_f6cc_75bb_de7e_86b209bc2ae1["tutorial014_an_py310.py"]
  1f0e807e_8e8f_35d7_c6d0_300886df5c17["time"]
  0e2e3c6e_f6cc_75bb_de7e_86b209bc2ae1 --> 1f0e807e_8e8f_35d7_c6d0_300886df5c17
  0dda2280_3359_8460_301c_e98c77e78185["typing"]
  0e2e3c6e_f6cc_75bb_de7e_86b209bc2ae1 --> 0dda2280_3359_8460_301c_e98c77e78185
  534f6e44_61b8_3c38_8b89_6934a6df9802["__init__.py"]
  0e2e3c6e_f6cc_75bb_de7e_86b209bc2ae1 --> 534f6e44_61b8_3c38_8b89_6934a6df9802
  967b6712_70e2_f5fa_f671_7c149857a445["responses.py"]
  0e2e3c6e_f6cc_75bb_de7e_86b209bc2ae1 --> 967b6712_70e2_f5fa_f671_7c149857a445
  bf11c16a_04e7_1fd0_b317_a1196fc34aad["sqlmodel"]
  0e2e3c6e_f6cc_75bb_de7e_86b209bc2ae1 --> bf11c16a_04e7_1fd0_b317_a1196fc34aad
  style 0e2e3c6e_f6cc_75bb_de7e_86b209bc2ae1 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

import time
from typing import Annotated

from fastapi import Depends, FastAPI, HTTPException
from fastapi.responses import StreamingResponse
from sqlmodel import Field, Session, SQLModel, create_engine

engine = create_engine("postgresql+psycopg://postgres:postgres@localhost/db")


class User(SQLModel, table=True):
    id: int | None = Field(default=None, primary_key=True)
    name: str


app = FastAPI()


def get_session():
    with Session(engine) as session:
        yield session


def get_user(user_id: int, session: Annotated[Session, Depends(get_session)]):
    user = session.get(User, user_id)
    if not user:
        raise HTTPException(status_code=403, detail="Not authorized")
    session.close()


def generate_stream(query: str):
    for ch in query:
        yield ch
        time.sleep(0.1)


@app.get("/generate", dependencies=[Depends(get_user)])
def generate(query: str):
    return StreamingResponse(content=generate_stream(query))

Domain

Subdomains

Classes

Dependencies

Frequently Asked Questions

What does tutorial014_an_py310.py do?
tutorial014_an_py310.py is a source file in the fastapi codebase, written in python. It belongs to the FastAPI domain, Routing subdomain.
What functions are defined in tutorial014_an_py310.py?
tutorial014_an_py310.py defines 4 function(s): generate, generate_stream, get_session, get_user.
What does tutorial014_an_py310.py depend on?
tutorial014_an_py310.py imports 5 module(s): __init__.py, responses.py, sqlmodel, time, typing.
Where is tutorial014_an_py310.py in the architecture?
tutorial014_an_py310.py is located at docs_src/dependencies/tutorial014_an_py310.py (domain: FastAPI, subdomain: Routing, directory: docs_src/dependencies).

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free