@@ -31,7 +31,10 @@ def post(self, request):
31
31
data ["created_by" ] = request .user
32
32
if "contest_admin" not in data :
33
33
data ["contest_admin" ] = list
34
- data ["contest_admin" ].append (str (request .user .id ))
34
+ for user_name in data ["contest_admin" ]:
35
+ if not User .objects .filter (username = user_name ).exists ():
36
+ return self .error (f"User:{ user_name } not exist" )
37
+ # data["contest_admin"].append(str(request.user.id))
35
38
if data ["end_time" ] <= data ["start_time" ]:
36
39
return self .error ("Start time must occur earlier than end time" )
37
40
if data .get ("password" ) and data ["password" ] == "" :
@@ -56,9 +59,9 @@ def put(self, request):
56
59
data ["end_time" ] = dateutil .parser .parse (data ["end_time" ])
57
60
58
61
if data ["contest_admin" ] and request .user == contest .created_by :
59
- for user_id in data ["contest_admin" ]:
60
- if not User .objects .filter (id = int ( user_id ) ).exists ():
61
- return self .error (f"User:{ user_id } not exist" )
62
+ for user_name in data ["contest_admin" ]:
63
+ if not User .objects .filter (username = user_name ).exists ():
64
+ return self .error (f"User:{ user_name } not exist" )
62
65
else :
63
66
data ["contest_admin" ] = contest .contest_admin
64
67
@@ -212,4 +215,4 @@ def get(self, request):
212
215
resp = FileResponse (open (zip_path , "rb" ))
213
216
resp ["Content-Type" ] = "application/zip"
214
217
resp ["Content-Disposition" ] = f"attachment;filename={ os .path .basename (zip_path )} "
215
- return resp
218
+ return resp
0 commit comments