23 lines
505 B
Python
23 lines
505 B
Python
|
from datetime import datetime
|
||
|
from typing import Union
|
||
|
|
||
|
from fastapi import FastAPI
|
||
|
from fastapi.encoders import jsonable_encoder
|
||
|
from fastapi.responses import JSONResponse
|
||
|
from pydantic import BaseModel
|
||
|
|
||
|
|
||
|
class Item(BaseModel):
|
||
|
title: str
|
||
|
timestamp: datetime
|
||
|
description: Union[str, None] = None
|
||
|
|
||
|
|
||
|
app = FastAPI()
|
||
|
|
||
|
|
||
|
@app.put("/items/{id}")
|
||
|
def update_item(id: str, item: Item):
|
||
|
json_compatible_item_data = jsonable_encoder(item)
|
||
|
return JSONResponse(content=json_compatible_item_data)
|