almost finished..

This commit is contained in:
CaptainNEO
2022-03-10 21:01:51 +08:00
parent c1eb1c06ea
commit 3a78fd393d
38 changed files with 2362 additions and 75 deletions

View File

@@ -13,16 +13,34 @@ class Item(BaseModel):
is_offer: Optional[bool] = None
db = {
1: Item(id=1, name="Foo", price=19.99),
2: Item(id=2, name="Bar", price=29.99),
3: Item(id=3, name="Baz", price=39.99),
}
@app.get("/")
def read_root():
return {"Hello": "World"}
def get_items(
limit: int = 10,
offset: int = Field(0, description="db offset"),
q: Optional[str] = None,
):
print(limit, offset, q)
return [
{"item": db[k], "price": db[k].price}
for k in sorted(db.keys())[offset : offset + limit]
]
@app.get("/items/{item_id}")
def read_item(item_id: int, q: Optional[str] = None):
return {"item_id": item_id, "q": q}
def read_item(item_id: int):
return db[item_id]
@app.post("/items")
def create_item(item: Item) -> Item:
pid = list(db.keys())[-1] + 1
item.id = pid
db[pid] = item
return item