Fix banner reorder API with proper request schema
- Create BannerReorderRequest Pydantic model for reorder endpoint - Update frontend to send car_ids wrapped in object - Fixes 422 Unprocessable Entity on reorder API 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -12,6 +12,7 @@ from ..schemas.hero_banner import (
|
||||
HeroBannerCreate, HeroBannerUpdate, HeroBannerResponse,
|
||||
HeroBannerListResponse, HeroBannerLocalizedResponse,
|
||||
HeroBannerSettingsUpdate, HeroBannerSettingsResponse,
|
||||
BannerReorderRequest,
|
||||
)
|
||||
from .auth import get_current_user
|
||||
from ..models import User
|
||||
@@ -325,7 +326,7 @@ def toggle_banner(
|
||||
|
||||
@router.put("/admin/reorder")
|
||||
def reorder_banners(
|
||||
car_ids: List[int] = Body(...),
|
||||
request: BannerReorderRequest,
|
||||
db: Session = Depends(get_db),
|
||||
current_user: User = Depends(get_admin_user)
|
||||
):
|
||||
@@ -333,13 +334,13 @@ def reorder_banners(
|
||||
|
||||
car_ids: 배너 차량 ID 목록 (원하는 순서대로)
|
||||
"""
|
||||
for order, car_id in enumerate(car_ids):
|
||||
for order, car_id in enumerate(request.car_ids):
|
||||
banner = db.query(HeroBanner).filter(HeroBanner.car_id == car_id).first()
|
||||
if banner:
|
||||
banner.display_order = order
|
||||
|
||||
db.commit()
|
||||
return {"message": "Banner order updated", "count": len(car_ids)}
|
||||
return {"message": "Banner order updated", "count": len(request.car_ids)}
|
||||
|
||||
|
||||
@router.get("/admin/banner-cars")
|
||||
|
||||
Reference in New Issue
Block a user