Use the new asave function of Django 4.2
Signed-off-by: Emmy D'Anello <emmy.danello@animath.fr>
This commit is contained in:
parent
bb9f0dab22
commit
90bfc45858
|
@ -120,7 +120,7 @@ class DrawConsumer(AsyncJsonWebsocketConsumer):
|
|||
{'type': 'draw.send_poules', 'round': r})
|
||||
|
||||
draw.current_round = r1
|
||||
await sync_to_async(draw.save)()
|
||||
await draw.asave()
|
||||
|
||||
async for td in r1.teamdraw_set.prefetch_related('participation__team').all():
|
||||
await self.channel_layer.group_send(f"team-{td.participation.team.trigram}",
|
||||
|
@ -145,7 +145,7 @@ class DrawConsumer(AsyncJsonWebsocketConsumer):
|
|||
|
||||
@ensure_orga
|
||||
async def abort(self, **kwargs):
|
||||
await sync_to_async(self.tournament.draw.delete)()
|
||||
await self.tournament.draw.adelete()
|
||||
await self.channel_layer.group_send(f"tournament-{self.tournament.id}", {'type': 'draw_abort'})
|
||||
|
||||
async def draw_abort(self, content):
|
||||
|
@ -201,7 +201,7 @@ class DrawConsumer(AsyncJsonWebsocketConsumer):
|
|||
team_draw.passage_dice = res
|
||||
else:
|
||||
team_draw.choice_dice = res
|
||||
await sync_to_async(team_draw.save)()
|
||||
await team_draw.asave()
|
||||
|
||||
await self.channel_layer.group_send(
|
||||
f"tournament-{self.tournament.id}", {'type': 'draw.dice', 'team': trigram, 'result': res})
|
||||
|
@ -223,7 +223,7 @@ class DrawConsumer(AsyncJsonWebsocketConsumer):
|
|||
|
||||
for dup in dups:
|
||||
dup.passage_dice = None
|
||||
await sync_to_async(dup.save)()
|
||||
await dup.asave()
|
||||
await self.channel_layer.group_send(
|
||||
f"tournament-{self.tournament.id}",
|
||||
{'type': 'draw.dice', 'team': dup.participation.team.trigram, 'result': None})
|
||||
|
@ -247,7 +247,7 @@ class DrawConsumer(AsyncJsonWebsocketConsumer):
|
|||
for i, td in enumerate(pool_tds):
|
||||
td.pool = p
|
||||
td.passage_index = i
|
||||
await sync_to_async(td.save)()
|
||||
await td.asave()
|
||||
|
||||
tds_copy = tds.copy()
|
||||
round2 = await self.tournament.draw.round_set.filter(number=2).aget()
|
||||
|
@ -266,11 +266,11 @@ class DrawConsumer(AsyncJsonWebsocketConsumer):
|
|||
if current_pool_id == len(round2_pools):
|
||||
current_pool_id = 0
|
||||
current_passage_index += 1
|
||||
await sync_to_async(td2.save)()
|
||||
await td2.asave()
|
||||
|
||||
pool = await Pool.objects.filter(round=self.tournament.draw.current_round, letter=1).aget()
|
||||
self.tournament.draw.current_round.current_pool = pool
|
||||
await sync_to_async(self.tournament.draw.current_round.save)()
|
||||
await self.tournament.draw.current_round.asave()
|
||||
|
||||
msg = "Les résultats des dés sont les suivants : "
|
||||
msg += await sync_to_async(lambda: ", ".join(
|
||||
|
@ -280,7 +280,7 @@ class DrawConsumer(AsyncJsonWebsocketConsumer):
|
|||
msg += "Attention : les ordres de passage sont déterminés à partir des scores des dés, mais ne sont pas "
|
||||
msg += "directement l'ordre croissant des dés, afin d'avoir des poules mélangées."
|
||||
self.tournament.draw.last_message = msg
|
||||
await sync_to_async(self.tournament.draw.save)()
|
||||
await self.tournament.draw.asave()
|
||||
|
||||
for td in tds:
|
||||
await self.channel_layer.group_send(
|
||||
|
@ -327,7 +327,7 @@ class DrawConsumer(AsyncJsonWebsocketConsumer):
|
|||
|
||||
for dup in dups:
|
||||
dup.choice_dice = None
|
||||
await sync_to_async(dup.save)()
|
||||
await dup.asave()
|
||||
await self.channel_layer.group_send(
|
||||
f"tournament-{self.tournament.id}",
|
||||
{'type': 'draw.dice', 'team': dup.participation.team.trigram, 'result': None})
|
||||
|
@ -345,13 +345,13 @@ class DrawConsumer(AsyncJsonWebsocketConsumer):
|
|||
tds.sort(key=lambda x: -x.choice_dice)
|
||||
for i, td in enumerate(tds):
|
||||
td.choose_index = i
|
||||
await sync_to_async(td.save)()
|
||||
await td.asave()
|
||||
|
||||
pool.current_team = tds[0]
|
||||
await sync_to_async(pool.save)()
|
||||
await pool.asave()
|
||||
|
||||
self.tournament.draw.last_message = ""
|
||||
await sync_to_async(self.tournament.draw.save)()
|
||||
await self.tournament.draw.asave()
|
||||
|
||||
await self.channel_layer.group_send(f"tournament-{self.tournament.id}",
|
||||
{'type': 'draw.set_info', 'draw': self.tournament.draw})
|
||||
|
@ -392,7 +392,7 @@ class DrawConsumer(AsyncJsonWebsocketConsumer):
|
|||
break
|
||||
|
||||
td.purposed = problem
|
||||
await sync_to_async(td.save)()
|
||||
await td.asave()
|
||||
|
||||
trigram = await sync_to_async(lambda: td.participation.team.trigram)()
|
||||
await self.channel_layer.group_send(f"team-{trigram}",
|
||||
|
@ -407,7 +407,7 @@ class DrawConsumer(AsyncJsonWebsocketConsumer):
|
|||
{'type': 'draw.draw_problem', 'team': trigram, 'problem': problem})
|
||||
|
||||
self.tournament.draw.last_message = ""
|
||||
await sync_to_async(self.tournament.draw.save)()
|
||||
await self.tournament.draw.asave()
|
||||
await self.channel_layer.group_send(f"tournament-{self.tournament.id}",
|
||||
{'type': 'draw.set_info', 'draw': self.tournament.draw})
|
||||
|
||||
|
@ -428,7 +428,7 @@ class DrawConsumer(AsyncJsonWebsocketConsumer):
|
|||
|
||||
td.accepted = td.purposed
|
||||
td.purposed = None
|
||||
await sync_to_async(td.save)()
|
||||
await td.asave()
|
||||
|
||||
trigram = await sync_to_async(lambda: td.participation.team.trigram)()
|
||||
msg = f"L'équipe <strong>{trigram}</strong> a accepté le problème <strong>{td.accepted}</strong>. "
|
||||
|
@ -437,7 +437,7 @@ class DrawConsumer(AsyncJsonWebsocketConsumer):
|
|||
else:
|
||||
msg += "Plus personne ne peut l'accepter."
|
||||
self.tournament.draw.last_message = msg
|
||||
await sync_to_async(self.tournament.draw.save)()
|
||||
await self.tournament.draw.asave()
|
||||
|
||||
await self.channel_layer.group_send(f"team-{trigram}",
|
||||
{'type': 'draw.buttons_visibility', 'visible': False})
|
||||
|
@ -453,7 +453,7 @@ class DrawConsumer(AsyncJsonWebsocketConsumer):
|
|||
# Continue
|
||||
next_td = await pool.next_td()
|
||||
pool.current_team = next_td
|
||||
await sync_to_async(pool.save)()
|
||||
await pool.asave()
|
||||
|
||||
new_trigram = await sync_to_async(lambda: next_td.participation.team.trigram)()
|
||||
await self.channel_layer.group_send(f"team-{new_trigram}",
|
||||
|
@ -476,13 +476,13 @@ class DrawConsumer(AsyncJsonWebsocketConsumer):
|
|||
tds[0].passage_index = p_index
|
||||
tds[1].passage_index = p_index + 1
|
||||
p_index += 2
|
||||
await sync_to_async(tds[0].save)()
|
||||
await sync_to_async(tds[1].save)()
|
||||
await tds[0].asave()
|
||||
await tds[1].asave()
|
||||
for pb, tds in problems.items():
|
||||
if len(tds) == 1:
|
||||
tds[0].passage_index = p_index
|
||||
p_index += 1
|
||||
await sync_to_async(tds[0].save)()
|
||||
await tds[0].asave()
|
||||
|
||||
print(p_index)
|
||||
|
||||
|
@ -498,12 +498,12 @@ class DrawConsumer(AsyncJsonWebsocketConsumer):
|
|||
msg += f"<br><br>Le tirage de la poule {pool.get_letter_display()}{r.number} est terminé. " \
|
||||
f"Le tableau récapitulatif est en bas."
|
||||
self.tournament.draw.last_message = msg
|
||||
await sync_to_async(self.tournament.draw.save)()
|
||||
await self.tournament.draw.asave()
|
||||
if await r.teamdraw_set.filter(accepted__isnull=True).aexists():
|
||||
# Next pool
|
||||
next_pool = await r.next_pool()
|
||||
r.current_pool = next_pool
|
||||
await sync_to_async(r.save)()
|
||||
await r.asave()
|
||||
|
||||
await self.channel_layer.group_send(f"tournament-{self.tournament.id}",
|
||||
{'type': 'draw.dice_visibility', 'visible': True})
|
||||
|
@ -515,7 +515,7 @@ class DrawConsumer(AsyncJsonWebsocketConsumer):
|
|||
self.tournament.draw.current_round = r2
|
||||
msg += "<br><br>Le tirage au sort du tour 1 est terminé."
|
||||
self.tournament.draw.last_message = msg
|
||||
await sync_to_async(self.tournament.draw.save)()
|
||||
await self.tournament.draw.asave()
|
||||
|
||||
for participation in self.participations:
|
||||
await self.channel_layer.group_send(
|
||||
|
@ -531,7 +531,7 @@ class DrawConsumer(AsyncJsonWebsocketConsumer):
|
|||
# Start the first pool of the second round
|
||||
p1: Pool = await r2.pool_set.filter(letter=1).aget()
|
||||
r2.current_pool = p1
|
||||
await sync_to_async(r2.save)()
|
||||
await r2.asave()
|
||||
|
||||
async for td in p1.teamdraw_set.prefetch_related('participation__team').all():
|
||||
await self.channel_layer.group_send(f"team-{td.participation.team.trigram}",
|
||||
|
@ -542,7 +542,7 @@ class DrawConsumer(AsyncJsonWebsocketConsumer):
|
|||
# For the final tournament, we wait for a manual update between the two rounds.
|
||||
msg += "<br><br>Le tirage au sort du tour 1 est terminé."
|
||||
self.tournament.draw.last_message = msg
|
||||
await sync_to_async(self.tournament.draw.save)()
|
||||
await self.tournament.draw.asave()
|
||||
|
||||
await self.channel_layer.group_send(f"volunteer-{self.tournament.id}",
|
||||
{'type': 'draw.export_visibility', 'visible': True})
|
||||
|
@ -572,7 +572,7 @@ class DrawConsumer(AsyncJsonWebsocketConsumer):
|
|||
if not already_refused:
|
||||
td.rejected.append(problem)
|
||||
td.purposed = None
|
||||
await sync_to_async(td.save)()
|
||||
await td.asave()
|
||||
|
||||
remaining = settings.PROBLEM_COUNT - 5 - len(td.rejected)
|
||||
|
||||
|
@ -586,7 +586,7 @@ class DrawConsumer(AsyncJsonWebsocketConsumer):
|
|||
else:
|
||||
msg += "Cela ajoute une pénalité de 0.5 sur le coefficient de l'oral de læ défenseur⋅se."
|
||||
self.tournament.draw.last_message = msg
|
||||
await sync_to_async(self.tournament.draw.save)()
|
||||
await self.tournament.draw.asave()
|
||||
|
||||
await self.channel_layer.group_send(f"team-{trigram}",
|
||||
{'type': 'draw.buttons_visibility', 'visible': False})
|
||||
|
@ -602,7 +602,7 @@ class DrawConsumer(AsyncJsonWebsocketConsumer):
|
|||
next_td = await pool.next_td()
|
||||
|
||||
pool.current_team = next_td
|
||||
await sync_to_async(pool.save)()
|
||||
await pool.asave()
|
||||
|
||||
new_trigram = await sync_to_async(lambda: next_td.participation.team.trigram)()
|
||||
await self.channel_layer.group_send(f"team-{new_trigram}",
|
||||
|
@ -635,11 +635,11 @@ class DrawConsumer(AsyncJsonWebsocketConsumer):
|
|||
msg = "Le tirage au sort pour le tour 2 va commencer. " \
|
||||
"L'ordre de passage est déterminé à partir du classement du premier tour."
|
||||
self.tournament.draw.last_message = msg
|
||||
await sync_to_async(self.tournament.draw.save)()
|
||||
await self.tournament.draw.asave()
|
||||
|
||||
pool = await Pool.objects.filter(round=self.tournament.draw.current_round, letter=1).aget()
|
||||
r2.current_pool = pool
|
||||
await sync_to_async(r2.save)()
|
||||
await r2.asave()
|
||||
|
||||
notes = dict()
|
||||
async for participation in self.tournament.participations.filter(valid=True).prefetch_related('team').all():
|
||||
|
@ -654,7 +654,7 @@ class DrawConsumer(AsyncJsonWebsocketConsumer):
|
|||
td = await TeamDraw.objects.aget(round=r2, participation=participation)
|
||||
td.pool = pool
|
||||
td.passage_index = i
|
||||
await sync_to_async(td.save)()
|
||||
await td.asave()
|
||||
await self.channel_layer.group_send(f"tournament-{self.tournament.id}",
|
||||
{'type': 'draw.send_poules', 'round': r2})
|
||||
|
||||
|
|
Loading…
Reference in New Issue