diff --git a/lineups/models.py b/lineups/models.py index 71a8362..88dcf8e 100644 --- a/lineups/models.py +++ b/lineups/models.py @@ -1,3 +1,25 @@ from django.db import models - +from players.models import Player +from events.models import Event # Create your models here. +class Positioning(models.Model): + player = models.ForeignKey(Player, on_delete=models.CASCADE) + event = models.ForeignKey(Event, on_delete=models.CASCADE) + positions = [ + ('P', 'P'), + ('C', 'C'), + ('1B', '1B'), + ('2B', '2B'), + ('3B', '3B'), + ('SS', 'SS'), + ('LF', 'LF'), + ('CF', 'CF'), + ('RF', 'RF'), + ('DH','DH'), + ('EH','EH') + ] + position = models.CharField(choices=positions, default=None, max_length=2, null=True) + order = models.IntegerField(default=None, null=True) + + class Meta: + unique_together = ('player', 'event',) \ No newline at end of file diff --git a/lineups/templates/lineups/lineup.html b/lineups/templates/lineups/lineup.html index 74b2b0c..4e719d9 100644 --- a/lineups/templates/lineups/lineup.html +++ b/lineups/templates/lineups/lineup.html @@ -1,4 +1,4 @@ -{% extends 'base.html' %}{% block title %} {{ title }} {% endblock %} +{% extends 'base.html' %}{% block title %} {{ title }} {% endblock %}{% load crispy_forms_tags %} {% block content %}

{{ title }}

@@ -8,11 +8,26 @@
-
    - {% for li in lineup %} -
  • {{ l_i }}
  • +{#
      #} +
      + {% csrf_token %} + {% for pos in positionings_formset %} +
      +
      +
      + {{ pos.order }} +
      +
      + {{ pos.player }} +
      +
      + {{ pos.position }} +
      +
      +
      {% endfor %} -
    + +
diff --git a/lineups/views.py b/lineups/views.py index e38b3e0..37e12ae 100644 --- a/lineups/views.py +++ b/lineups/views.py @@ -1,4 +1,6 @@ from django.shortcuts import render +from django.forms import formset_factory +from .forms import PositioningForm from django.http import HttpResponse from events.models import Event from players.models import Player @@ -7,5 +9,10 @@ from players.models import Player def edit(request, id): event = Event.objects.get(id=id) players = Player.objects.all() + PositioningFormSet = formset_factory(PositioningForm, extra=9) + formset = PositioningFormSet() print(event) - return render(request, 'lineups/lineup.html', {'title': 'Lineup', 'event': event, 'players': players, 'lineup':[]}) \ No newline at end of file + return render(request, 'lineups/lineup.html', {'title': 'Lineup', + 'event': event, + 'players': players, + 'positionings_formset':formset}) \ No newline at end of file