Commit ·
5fb1a5e
1
Parent(s): f2b5a4c
genre_categories update
Browse files
app.py
CHANGED
|
@@ -95,18 +95,23 @@ async def get_recent_items(limit: int = 5):
|
|
| 95 |
@app.get("/api/get/genre_categories")
|
| 96 |
async def get_genre_categories():
|
| 97 |
"""
|
| 98 |
-
Retrieve all available genre categories
|
| 99 |
|
| 100 |
Returns:
|
| 101 |
-
A JSON response containing a list of
|
|
|
|
| 102 |
"""
|
| 103 |
try:
|
| 104 |
-
#
|
| 105 |
-
categories =
|
|
|
|
|
|
|
|
|
|
| 106 |
return JSONResponse(content={"genres": categories})
|
| 107 |
except Exception as e:
|
| 108 |
raise HTTPException(status_code=500, detail=f"Error retrieving genre categories: {str(e)}")
|
| 109 |
|
|
|
|
| 110 |
@app.get("/api/get/genre")
|
| 111 |
async def get_genre_items(
|
| 112 |
genre: List[str] = Query(...),
|
|
|
|
| 95 |
@app.get("/api/get/genre_categories")
|
| 96 |
async def get_genre_categories():
|
| 97 |
"""
|
| 98 |
+
Retrieve all available genre categories along with their density (number of media items).
|
| 99 |
|
| 100 |
Returns:
|
| 101 |
+
A JSON response containing a list of genre objects, for example:
|
| 102 |
+
[{'name': 'Comedy', 'density': 12}, {'name': 'Drama', 'density': 8}, ...]
|
| 103 |
"""
|
| 104 |
try:
|
| 105 |
+
# Assuming genre_list.genres is a dict where keys are genre names and values are lists of items.
|
| 106 |
+
categories = [
|
| 107 |
+
{"name": genre, "density": len(items)}
|
| 108 |
+
for genre, items in sorted(genre_list.genres.items())
|
| 109 |
+
]
|
| 110 |
return JSONResponse(content={"genres": categories})
|
| 111 |
except Exception as e:
|
| 112 |
raise HTTPException(status_code=500, detail=f"Error retrieving genre categories: {str(e)}")
|
| 113 |
|
| 114 |
+
|
| 115 |
@app.get("/api/get/genre")
|
| 116 |
async def get_genre_items(
|
| 117 |
genre: List[str] = Query(...),
|