This commit is contained in:
Matthias Nagel 2025-11-19 06:49:43 +01:00
parent 12aeb2567f
commit f18ced6570
2 changed files with 9 additions and 16 deletions

View File

@ -155,28 +155,21 @@ def record_results(request, game_id):
if request.method == 'POST': if request.method == 'POST':
form = GameResultForm(request.POST, game=game, instance=game_result) form = GameResultForm(request.POST, game=game, instance=game_result)
if form.is_valid(): if form.is_valid():
home_innings = [] inning_results = {}
away_innings = []
for i in range(1, game.number_of_innings + 1): for i in range(1, game.number_of_innings + 1):
home_innings.append(form.cleaned_data.get(f'inning_{i}_home')) inning_results[f'inning_{i}'] = {
away_innings.append(form.cleaned_data.get(f'inning_{i}_guest')) 'home': form.cleaned_data.get(f'inning_{i}_home'),
'guest': form.cleaned_data.get(f'inning_{i}_guest'),
game_result.inning_results = { }
'home': home_innings, game_result.inning_results = inning_results
'away': away_innings
}
game_result.save() game_result.save()
return redirect('dashboard') return redirect('dashboard')
else: else:
initial_data = {} initial_data = {}
if game_result.inning_results: if game_result.inning_results:
home_innings = game_result.inning_results.get('home', []) for inning, scores in game_result.inning_results.items():
away_innings = game_result.inning_results.get('away', []) initial_data[f'{inning}_home'] = scores.get('home')
for i in range(game.number_of_innings): initial_data[f'{inning}_guest'] = scores.get('guest')
if i < len(home_innings):
initial_data[f'inning_{i+1}_home'] = home_innings[i]
if i < len(away_innings):
initial_data[f'inning_{i+1}_guest'] = away_innings[i]
form = GameResultForm(game=game, instance=game_result, initial=initial_data) form = GameResultForm(game=game, instance=game_result, initial=initial_data)
form_fields_by_inning = [] form_fields_by_inning = []

Binary file not shown.