new
All checks were successful
Deploy to Server / deploy (push) Successful in 32s

This commit is contained in:
jeremygan2021
2026-03-22 22:04:13 +08:00
parent 2e05322909
commit 2104e7b7dc
8 changed files with 525 additions and 112 deletions

View File

@@ -10,7 +10,6 @@ from .serializers import (
ProjectSerializer, ProjectFileSerializer,
ScoreSerializer, CommentSerializer, ScoreDimensionSerializer
)
import uuid
from rest_framework.pagination import PageNumberPagination
@@ -206,21 +205,7 @@ class ProjectFileViewSet(viewsets.ModelViewSet):
if not user or project.contestant.user != user:
raise serializers.ValidationError("无权上传文件")
file_obj = serializer.validated_data.get('file')
if file_obj:
try:
from ai_services.services import AliyunTingwuService
service = AliyunTingwuService()
if service.bucket:
ext = file_obj.name.split('.')[-1] if '.' in file_obj.name else ''
file_name = f"competitions/projects/{project.id}/{uuid.uuid4()}.{ext}"
oss_url = service.upload_to_oss(file_obj, file_name, day=30)
serializer.save(file_url=oss_url, file=None)
return
except Exception as e:
print(f"OSS upload failed, using local storage: {e}")
serializer.save()