Home / File/ tutorial008b_an_py39.py — fastapi Source File

tutorial008b_an_py39.py — fastapi Source File

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

File python FastAPI Responses 2 imports 2 functions 1 classes

Entity Profile

Dependency Diagram

graph LR
  553d0e6e_1da6_110e_d353_2449878156a2["tutorial008b_an_py39.py"]
  0dda2280_3359_8460_301c_e98c77e78185["typing"]
  553d0e6e_1da6_110e_d353_2449878156a2 --> 0dda2280_3359_8460_301c_e98c77e78185
  534f6e44_61b8_3c38_8b89_6934a6df9802["__init__.py"]
  553d0e6e_1da6_110e_d353_2449878156a2 --> 534f6e44_61b8_3c38_8b89_6934a6df9802
  style 553d0e6e_1da6_110e_d353_2449878156a2 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

from typing import Annotated

from fastapi import Depends, FastAPI, HTTPException

app = FastAPI()


data = {
    "plumbus": {"description": "Freshly pickled plumbus", "owner": "Morty"},
    "portal-gun": {"description": "Gun to create portals", "owner": "Rick"},
}


class OwnerError(Exception):
    pass


def get_username():
    try:
        yield "Rick"
    except OwnerError as e:
        raise HTTPException(status_code=400, detail=f"Owner error: {e}")


@app.get("/items/{item_id}")
def get_item(item_id: str, username: Annotated[str, Depends(get_username)]):
    if item_id not in data:
        raise HTTPException(status_code=404, detail="Item not found")
    item = data[item_id]
    if item["owner"] != username:
        raise OwnerError(username)
    return item

Domain

Subdomains

Classes

Dependencies

Frequently Asked Questions

What does tutorial008b_an_py39.py do?
tutorial008b_an_py39.py is a source file in the fastapi codebase, written in python. It belongs to the FastAPI domain, Responses subdomain.
What functions are defined in tutorial008b_an_py39.py?
tutorial008b_an_py39.py defines 2 function(s): get_item, get_username.
What does tutorial008b_an_py39.py depend on?
tutorial008b_an_py39.py imports 2 module(s): __init__.py, typing.
Where is tutorial008b_an_py39.py in the architecture?
tutorial008b_an_py39.py is located at docs_src/dependencies/tutorial008b_an_py39.py (domain: FastAPI, subdomain: Responses, directory: docs_src/dependencies).

Analyze Your Own Codebase

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

Try Supermodel Free