๐ฏ Poin-Poin Utama Modul Ini:
- Path Parameters mengekstrak nilai langsung dari segmen rute URL
- Type hinting
post_id: intmembuat FastAPI mengonversi input string menjadi integer secara otomatis - Validasi otomatis mencegah error runtime akibat tipe data yang salah
๐ Parameter Rute (Path Parameters)
Path parameters digunakan ketika Anda ingin mengekstrak ID unik atau slug dari segmen URL seperti /posts/101.
Konversi Tipe Data Otomatis: Jika rute mendefinisikan
post_id: int, FastAPI akan membaca string "101" dari HTTP Request URL dan mengonversinya menjadi integer Python mentah 101 secara otomatis!
๐ป Kode Path Parameters & Enum Validation
main.py
from enum import Enum
from fastapi import FastAPI, Path
class ModelName(str, Enum):
alexnet = "alexnet"
resnet = "resnet"
lenet = "lenet"
app = FastAPI()
@app.get("/models/{model_name}")
def get_model(model_name: ModelName):
if model_name is ModelName.alexnet:
return {"model_name": model_name, "message": "Deep Learning Classic!"}
return {"model_name": model_name, "message": "Model Terdaftar"}
@app.get("/posts/{post_id}")
def get_post_by_id(post_id: int = Path(..., gt=0, description="ID harus integer positif")):
return {"post_id": post_id, "status": "Active"}