-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathmain.py
More file actions
40 lines (32 loc) · 810 Bytes
/
main.py
File metadata and controls
40 lines (32 loc) · 810 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
from fastapi import FastAPI, status
import uuid
from models import User
app = FastAPI()
users = {
"1": {
"name": "John",
"age": 20
},
"2": {
"name": "Jane",
"age": 21
}
}
@app.get("/users")
def users_list():
return users
@app.get("/users/{user_id}")
def user_details(user_id: str):
return users[user_id]
@app.post("/users", status_code=status.HTTP_201_CREATED)
def user_add(user: User):
users[str(uuid.uuid4())] = user
return "User added"
@app.put("/users/{user_id}", status_code=status.HTTP_200_OK)
def user_update(user_id: str, user: User):
users[user_id] = user
return "User updated"
@app.delete("/users/{user_id}", status_code=status.HTTP_200_OK)
def user_delete(user_id: str):
del users[user_id]
return "User deleted"