Spaces:
Running
Running
dashboard update
Browse files- app/dashboard.py +6 -5
app/dashboard.py
CHANGED
@@ -1,10 +1,11 @@
|
|
1 |
-
from fastapi import APIRouter, HTTPException
|
2 |
from sqlalchemy.ext.asyncio import AsyncSession
|
3 |
from sqlalchemy.future import select
|
4 |
from sqlalchemy.orm import sessionmaker
|
5 |
from sqlalchemy import desc
|
6 |
from app.database import engine
|
7 |
from app.models import VideoUpload, User
|
|
|
8 |
|
9 |
router = APIRouter()
|
10 |
|
@@ -12,20 +13,20 @@ router = APIRouter()
|
|
12 |
async_session = sessionmaker(engine, expire_on_commit=False, class_=AsyncSession)
|
13 |
|
14 |
|
15 |
-
@router.get("/dashboard
|
16 |
-
async def get_user_dashboard(
|
17 |
try:
|
18 |
async with async_session() as session:
|
19 |
query = (
|
20 |
select(VideoUpload)
|
21 |
-
.where(VideoUpload.user_id ==
|
22 |
.order_by(desc(VideoUpload.created_at))
|
23 |
)
|
24 |
result = await session.execute(query)
|
25 |
uploads = result.scalars().all()
|
26 |
|
27 |
# Get user details
|
28 |
-
user_query = select(User).where(User.id ==
|
29 |
user_result = await session.execute(user_query)
|
30 |
user = user_result.scalars().first()
|
31 |
|
|
|
1 |
+
from fastapi import APIRouter, HTTPException, Depends
|
2 |
from sqlalchemy.ext.asyncio import AsyncSession
|
3 |
from sqlalchemy.future import select
|
4 |
from sqlalchemy.orm import sessionmaker
|
5 |
from sqlalchemy import desc
|
6 |
from app.database import engine
|
7 |
from app.models import VideoUpload, User
|
8 |
+
from app.auth import get_current_user
|
9 |
|
10 |
router = APIRouter()
|
11 |
|
|
|
13 |
async_session = sessionmaker(engine, expire_on_commit=False, class_=AsyncSession)
|
14 |
|
15 |
|
16 |
+
@router.get("/dashboard")
|
17 |
+
async def get_user_dashboard(current_user: User = Depends(get_current_user)):
|
18 |
try:
|
19 |
async with async_session() as session:
|
20 |
query = (
|
21 |
select(VideoUpload)
|
22 |
+
.where(VideoUpload.user_id == current_user.id)
|
23 |
.order_by(desc(VideoUpload.created_at))
|
24 |
)
|
25 |
result = await session.execute(query)
|
26 |
uploads = result.scalars().all()
|
27 |
|
28 |
# Get user details
|
29 |
+
user_query = select(User).where(User.id == current_user.id)
|
30 |
user_result = await session.execute(user_query)
|
31 |
user = user_result.scalars().first()
|
32 |
|