From 265c160f256a7f91f3015fd2ee8322a1ce74b75e Mon Sep 17 00:00:00 2001 From: Tony Date: Mon, 15 Nov 2021 15:57:43 -0600 Subject: [PATCH] started transitioning lineup and players to tables --- lineups/templates/lineups/lineup.html | 53 ++++++++++++++++++++------- lineups/views.py | 10 +++-- 2 files changed, 45 insertions(+), 18 deletions(-) diff --git a/lineups/templates/lineups/lineup.html b/lineups/templates/lineups/lineup.html index 542da5e..00ada57 100644 --- a/lineups/templates/lineups/lineup.html +++ b/lineups/templates/lineups/lineup.html @@ -8,7 +8,7 @@
-
Lineup
+
Lineup
{#
    #}
    @@ -23,12 +23,20 @@ Position - {% for form in positionings_formset %} - - {{ form.order }} - {{ form.player }} - {{ form.position }} + {% for player in positionings_players_initial|dictsort:"positioning.order" %} + {% if player.positioning %} + +{# {{ form.order }}#} +{# {{ form.player }}#} +{# {{ form.position }}#} + {% if player.positioning.order %}{{ player.positioning.order }}{% endif %} + {{ player.first_name }} {{ player.last_name }} + {{ player.positioning.position }} + + {% endif %} {% endfor %} {# {% endfor %}#} @@ -37,11 +45,23 @@
-
Players
-
    +
    Players
    +
    + + + + + + + + + + {% for player in players %} -
  • - {% if player.availability.available == 2 %} + {% if not player.positioning %} +
  • + + + + + + + + {% endif %} {% endfor %} - +
    Name#AvgSlugOBP
    + {% if player.availability.available == 2 %} Yes {% elif player.availability.available == 1%} Maybe @@ -50,11 +70,16 @@ {% elif player.availability.available == -1%} Unknown {% endif %} - {{ player.first_name }} {{ player.last_name }} - {{ player.statline }} - + {{ player.first_name }} {{ player.last_name }}{{ player.jersey_number }}{{ player.statline.batting_avg|stringformat:".3f"|slice:"1:" }}{{ player.statline.slugging_pct|stringformat:".3f"|slice:"1:" }}{{ player.statline.onbase_pct|stringformat:".3f"|slice:"1:" }}
diff --git a/lineups/views.py b/lineups/views.py index 5866d2b..20f235a 100644 --- a/lineups/views.py +++ b/lineups/views.py @@ -29,18 +29,19 @@ def edit(request, event_id): return render(request, 'success.html', {'call_back':'edit lineup','id':event_id}, status=200) # return render(request, 'success.html', {'call_back':'schedule'}) event = Event.objects.get(id=event_id) - players = Player.objects.all().prefetch_related('availability_set', 'statline_set') + players = Player.objects.all().prefetch_related('availability_set', 'statline_set', 'positioning_set') players = [ { **model_to_dict(player), 'availability':player.availability_set.get(event_id=event_id), # 'available_value': player.availability_set.get(event_id=event_id).available, - 'statline': player.statline_set.get(player_id=player.id) + 'statline': player.statline_set.get(player_id=player.id), + 'positioning': player.positioning_set.filter(event_id=event_id).first() } for player in players ] - players.sort(key=lambda d: d['availability'].available, reverse = True) - qset = Positioning.objects.filter(event_id=event_id, order__isnull = False) + players.sort(key=lambda d: (-d['availability'].available, d['last_name'])) + qset = Positioning.objects.filter(event_id=event_id) formset = PositioningFormSet(queryset=qset) for form in formset: for field in form.fields: @@ -48,4 +49,5 @@ def edit(request, event_id): return render(request, 'lineups/lineup.html', {'title': 'Lineup', 'event': event, 'players': players, + 'positionings_players_initial':[player for player in players if player['positioning']], 'positionings_formset':formset}) \ No newline at end of file