consolidated objects into one benchcoach app
created benchcoachproject app to contain all the settings and stuff some other changes that got grouped with this commit is the adding the ApiObject to the TeamSnap object model
This commit is contained in:
@@ -1,6 +0,0 @@
|
||||
from django.contrib import admin
|
||||
from .models import Player, StatLine
|
||||
|
||||
# Register your models here.
|
||||
admin.site.register(Player)
|
||||
admin.site.register(StatLine)
|
||||
@@ -1,6 +0,0 @@
|
||||
from django.apps import AppConfig
|
||||
|
||||
|
||||
class PlayersConfig(AppConfig):
|
||||
default_auto_field = 'django.db.models.BigAutoField'
|
||||
name = 'players'
|
||||
@@ -1,477 +0,0 @@
|
||||
[
|
||||
{
|
||||
"model": "players.player",
|
||||
"pk": null,
|
||||
"fields": {
|
||||
"first_name": "Tony",
|
||||
"jersey_number": 13,
|
||||
"last_name": "Correa"
|
||||
}
|
||||
},
|
||||
{
|
||||
"model": "players.player",
|
||||
"pk": null,
|
||||
"fields": {
|
||||
"first_name": "Tim",
|
||||
"jersey_number": 8,
|
||||
"last_name": "Riggenbach"
|
||||
}
|
||||
},
|
||||
{
|
||||
"model": "players.player",
|
||||
"pk": null,
|
||||
"fields": {
|
||||
"first_name": "Thomas",
|
||||
"jersey_number": 44,
|
||||
"last_name": "Feazelle"
|
||||
}
|
||||
},
|
||||
{
|
||||
"model": "players.player",
|
||||
"pk": null,
|
||||
"fields": {
|
||||
"first_name": "Philip",
|
||||
"jersey_number": 25,
|
||||
"last_name": "Oweimrin"
|
||||
}
|
||||
},
|
||||
{
|
||||
"model": "players.player",
|
||||
"pk": null,
|
||||
"fields": {
|
||||
"first_name": "Phil",
|
||||
"jersey_number": 21,
|
||||
"last_name": "Zelenka"
|
||||
}
|
||||
},
|
||||
{
|
||||
"model": "players.player",
|
||||
"pk": null,
|
||||
"fields": {
|
||||
"first_name": "Nick",
|
||||
"jersey_number": 23,
|
||||
"last_name": "Schmidt"
|
||||
}
|
||||
},
|
||||
{
|
||||
"model": "players.player",
|
||||
"pk": null,
|
||||
"fields": {
|
||||
"first_name": "Mike",
|
||||
"jersey_number": 28,
|
||||
"last_name": "DiCola"
|
||||
}
|
||||
},
|
||||
{
|
||||
"model": "players.player",
|
||||
"pk": null,
|
||||
"fields": {
|
||||
"first_name": "Max",
|
||||
"jersey_number": 99,
|
||||
"last_name": "Kiefer"
|
||||
}
|
||||
},
|
||||
{
|
||||
"model": "players.player",
|
||||
"pk": null,
|
||||
"fields": {
|
||||
"first_name": "Matthew",
|
||||
"jersey_number": 5,
|
||||
"last_name": "Steffens"
|
||||
}
|
||||
},
|
||||
{
|
||||
"model": "players.player",
|
||||
"pk": null,
|
||||
"fields": {
|
||||
"first_name": "Matt",
|
||||
"jersey_number": 6,
|
||||
"last_name": "Burch"
|
||||
}
|
||||
},
|
||||
{
|
||||
"model": "players.player",
|
||||
"pk": null,
|
||||
"fields": {
|
||||
"first_name": "Jules",
|
||||
"jersey_number": 34,
|
||||
"last_name": "Cantor"
|
||||
}
|
||||
},
|
||||
{
|
||||
"model": "players.player",
|
||||
"pk": null,
|
||||
"fields": {
|
||||
"first_name": "John",
|
||||
"jersey_number": 34,
|
||||
"last_name": "Lundgren"
|
||||
}
|
||||
},
|
||||
{
|
||||
"model": "players.player",
|
||||
"pk": null,
|
||||
"fields": {
|
||||
"first_name": "Joe",
|
||||
"jersey_number": 17,
|
||||
"last_name": "Malafronte"
|
||||
}
|
||||
},
|
||||
{
|
||||
"model": "players.player",
|
||||
"pk": null,
|
||||
"fields": {
|
||||
"first_name": "Hans",
|
||||
"jersey_number": 18,
|
||||
"last_name": "Hetrick"
|
||||
}
|
||||
},
|
||||
{
|
||||
"model": "players.player",
|
||||
"pk": null,
|
||||
"fields": {
|
||||
"first_name": "Greg",
|
||||
"jersey_number": 19,
|
||||
"last_name": "Sells"
|
||||
}
|
||||
},
|
||||
{
|
||||
"model": "players.player",
|
||||
"pk": null,
|
||||
"fields": {
|
||||
"first_name": "Garrett",
|
||||
"jersey_number": 17,
|
||||
"last_name": "Eddy"
|
||||
}
|
||||
},
|
||||
{
|
||||
"model": "players.player",
|
||||
"pk": null,
|
||||
"fields": {
|
||||
"first_name": "Cole",
|
||||
"jersey_number": 24,
|
||||
"last_name": "Thompson"
|
||||
}
|
||||
},
|
||||
{
|
||||
"model": "players.player",
|
||||
"pk": null,
|
||||
"fields": {
|
||||
"first_name": "Brian",
|
||||
"jersey_number": 2,
|
||||
"last_name": "Lehman"
|
||||
}
|
||||
},
|
||||
{
|
||||
"model": "players.player",
|
||||
"pk": null,
|
||||
"fields": {
|
||||
"first_name": "Brent",
|
||||
"jersey_number": 27,
|
||||
"last_name": "Fukushima"
|
||||
}
|
||||
},
|
||||
{
|
||||
"model": "players.player",
|
||||
"pk": null,
|
||||
"fields": {
|
||||
"first_name": "Brandon",
|
||||
"jersey_number": 3,
|
||||
"last_name": "Jessee"
|
||||
}
|
||||
},
|
||||
{
|
||||
"model": "players.player",
|
||||
"pk": null,
|
||||
"fields": {
|
||||
"first_name": "Brad",
|
||||
"jersey_number": 15,
|
||||
"last_name": "Halperin"
|
||||
}
|
||||
},
|
||||
{
|
||||
"model": "players.player",
|
||||
"pk": null,
|
||||
"fields": {
|
||||
"first_name": "Arron",
|
||||
"jersey_number": 11,
|
||||
"last_name": "Kruse"
|
||||
}
|
||||
},
|
||||
{
|
||||
"model": "players.player",
|
||||
"pk": null,
|
||||
"fields": {
|
||||
"first_name": "Amanda",
|
||||
"jersey_number": 41,
|
||||
"last_name": "Mordacq"
|
||||
}
|
||||
},
|
||||
{
|
||||
"model": "players.player",
|
||||
"pk": null,
|
||||
"fields": {
|
||||
"first_name": "Alec",
|
||||
"jersey_number": 14,
|
||||
"last_name": "Reinke"
|
||||
}
|
||||
},
|
||||
{
|
||||
"model": "players.player",
|
||||
"pk": null,
|
||||
"fields": {
|
||||
"first_name": "Adrien",
|
||||
"jersey_number": 45,
|
||||
"last_name": "Kelly"
|
||||
}
|
||||
},
|
||||
{
|
||||
"model": "players.statline",
|
||||
"pk": null,
|
||||
"fields": {
|
||||
"batting_avg": 0.417,
|
||||
"onbase_pct": 0.488,
|
||||
"player_id": 1,
|
||||
"slugging_pct": 0.472
|
||||
}
|
||||
},
|
||||
{
|
||||
"model": "players.statline",
|
||||
"pk": null,
|
||||
"fields": {
|
||||
"batting_avg": 0.422,
|
||||
"onbase_pct": 0.518,
|
||||
"player_id": 2,
|
||||
"slugging_pct": 0.667
|
||||
}
|
||||
},
|
||||
{
|
||||
"model": "players.statline",
|
||||
"pk": null,
|
||||
"fields": {
|
||||
"batting_avg": 0,
|
||||
"onbase_pct": 0.2,
|
||||
"player_id": 3,
|
||||
"slugging_pct": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"model": "players.statline",
|
||||
"pk": null,
|
||||
"fields": {
|
||||
"batting_avg": 0.061,
|
||||
"onbase_pct": 0.233,
|
||||
"player_id": 4,
|
||||
"slugging_pct": 0.061
|
||||
}
|
||||
},
|
||||
{
|
||||
"model": "players.statline",
|
||||
"pk": null,
|
||||
"fields": {
|
||||
"batting_avg": 0.282,
|
||||
"onbase_pct": 0.338,
|
||||
"player_id": 5,
|
||||
"slugging_pct": 0.296
|
||||
}
|
||||
},
|
||||
{
|
||||
"model": "players.statline",
|
||||
"pk": null,
|
||||
"fields": {
|
||||
"batting_avg": 0.267,
|
||||
"onbase_pct": 0.333,
|
||||
"player_id": 6,
|
||||
"slugging_pct": 0.3
|
||||
}
|
||||
},
|
||||
{
|
||||
"model": "players.statline",
|
||||
"pk": null,
|
||||
"fields": {
|
||||
"batting_avg": 0.214,
|
||||
"onbase_pct": 0.235,
|
||||
"player_id": 7,
|
||||
"slugging_pct": 0.357
|
||||
}
|
||||
},
|
||||
{
|
||||
"model": "players.statline",
|
||||
"pk": null,
|
||||
"fields": {
|
||||
"batting_avg": 0.219,
|
||||
"onbase_pct": 0.324,
|
||||
"player_id": 8,
|
||||
"slugging_pct": 0.344
|
||||
}
|
||||
},
|
||||
{
|
||||
"model": "players.statline",
|
||||
"pk": null,
|
||||
"fields": {
|
||||
"batting_avg": 0.28,
|
||||
"onbase_pct": 0.28,
|
||||
"player_id": 9,
|
||||
"slugging_pct": 0.32
|
||||
}
|
||||
},
|
||||
{
|
||||
"model": "players.statline",
|
||||
"pk": null,
|
||||
"fields": {
|
||||
"batting_avg": 0.333,
|
||||
"onbase_pct": 0.424,
|
||||
"player_id": 10,
|
||||
"slugging_pct": 0.373
|
||||
}
|
||||
},
|
||||
{
|
||||
"model": "players.statline",
|
||||
"pk": null,
|
||||
"fields": {
|
||||
"batting_avg": 0,
|
||||
"onbase_pct": 0.25,
|
||||
"player_id": 11,
|
||||
"slugging_pct": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"model": "players.statline",
|
||||
"pk": null,
|
||||
"fields": {
|
||||
"batting_avg": 0,
|
||||
"onbase_pct": 0,
|
||||
"player_id": 12,
|
||||
"slugging_pct": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"model": "players.statline",
|
||||
"pk": null,
|
||||
"fields": {
|
||||
"batting_avg": 0.379,
|
||||
"onbase_pct": 0.379,
|
||||
"player_id": 13,
|
||||
"slugging_pct": 0.552
|
||||
}
|
||||
},
|
||||
{
|
||||
"model": "players.statline",
|
||||
"pk": null,
|
||||
"fields": {
|
||||
"batting_avg": 0.095,
|
||||
"onbase_pct": 0.174,
|
||||
"player_id": 14,
|
||||
"slugging_pct": 0.143
|
||||
}
|
||||
},
|
||||
{
|
||||
"model": "players.statline",
|
||||
"pk": null,
|
||||
"fields": {
|
||||
"batting_avg": 0.41,
|
||||
"onbase_pct": 0.486,
|
||||
"player_id": 15,
|
||||
"slugging_pct": 0.525
|
||||
}
|
||||
},
|
||||
{
|
||||
"model": "players.statline",
|
||||
"pk": null,
|
||||
"fields": {
|
||||
"batting_avg": 0.357,
|
||||
"onbase_pct": 0.406,
|
||||
"player_id": 16,
|
||||
"slugging_pct": 0.536
|
||||
}
|
||||
},
|
||||
{
|
||||
"model": "players.statline",
|
||||
"pk": null,
|
||||
"fields": {
|
||||
"batting_avg": 0.185,
|
||||
"onbase_pct": 0.312,
|
||||
"player_id": 17,
|
||||
"slugging_pct": 0.259
|
||||
}
|
||||
},
|
||||
{
|
||||
"model": "players.statline",
|
||||
"pk": null,
|
||||
"fields": {
|
||||
"batting_avg": 0.299,
|
||||
"onbase_pct": 0.378,
|
||||
"player_id": 18,
|
||||
"slugging_pct": 0.391
|
||||
}
|
||||
},
|
||||
{
|
||||
"model": "players.statline",
|
||||
"pk": null,
|
||||
"fields": {
|
||||
"batting_avg": 0.438,
|
||||
"onbase_pct": 0.571,
|
||||
"player_id": 19,
|
||||
"slugging_pct": 0.781
|
||||
}
|
||||
},
|
||||
{
|
||||
"model": "players.statline",
|
||||
"pk": null,
|
||||
"fields": {
|
||||
"batting_avg": 0.333,
|
||||
"onbase_pct": 0.417,
|
||||
"player_id": 20,
|
||||
"slugging_pct": 0.367
|
||||
}
|
||||
},
|
||||
{
|
||||
"model": "players.statline",
|
||||
"pk": null,
|
||||
"fields": {
|
||||
"batting_avg": 0.333,
|
||||
"onbase_pct": 0.41,
|
||||
"player_id": 22,
|
||||
"slugging_pct": 0.522
|
||||
}
|
||||
},
|
||||
{
|
||||
"model": "players.statline",
|
||||
"pk": null,
|
||||
"fields": {
|
||||
"batting_avg": 0.062,
|
||||
"onbase_pct": 0.211,
|
||||
"player_id": 23,
|
||||
"slugging_pct": 0.125
|
||||
}
|
||||
},
|
||||
{
|
||||
"model": "players.statline",
|
||||
"pk": null,
|
||||
"fields": {
|
||||
"batting_avg": 0.5,
|
||||
"onbase_pct": 0.611,
|
||||
"player_id": 24,
|
||||
"slugging_pct": 0.5
|
||||
}
|
||||
},
|
||||
{
|
||||
"model": "players.statline",
|
||||
"pk": null,
|
||||
"fields": {
|
||||
"batting_avg": 0.25,
|
||||
"onbase_pct": 0.25,
|
||||
"player_id": 25,
|
||||
"slugging_pct": 0.5
|
||||
}
|
||||
},
|
||||
{
|
||||
"model": "players.statline",
|
||||
"pk": null,
|
||||
"fields": {
|
||||
"batting_avg": 0,
|
||||
"onbase_pct": 0,
|
||||
"player_id": 21,
|
||||
"slugging_pct": 0
|
||||
}
|
||||
}
|
||||
]
|
||||
@@ -1,98 +0,0 @@
|
||||
- model: players.player
|
||||
pk: 1
|
||||
fields:
|
||||
first_name: Edric
|
||||
last_name: Tosser
|
||||
jersey_number: 1
|
||||
team: 1
|
||||
- model: players.player
|
||||
pk: 2
|
||||
fields:
|
||||
first_name: Paula
|
||||
last_name: Mason
|
||||
jersey_number: 2
|
||||
team: 1
|
||||
- model: players.player
|
||||
pk: 3
|
||||
fields:
|
||||
first_name: Declan
|
||||
last_name: Suzanne
|
||||
jersey_number: 3
|
||||
team: 1
|
||||
- model: players.player
|
||||
pk: 4
|
||||
fields:
|
||||
first_name: Baby
|
||||
last_name: Triumphant
|
||||
jersey_number: 4
|
||||
team: 1
|
||||
- model: players.player
|
||||
pk: 5
|
||||
fields:
|
||||
first_name: Joshua
|
||||
last_name: Butt
|
||||
jersey_number: 5
|
||||
team: 1
|
||||
- model: players.player
|
||||
pk: 6
|
||||
fields:
|
||||
first_name: Isaac
|
||||
last_name: Johnson
|
||||
jersey_number: 6
|
||||
team: 1
|
||||
- model: players.player
|
||||
pk: 7
|
||||
fields:
|
||||
first_name: Rivers
|
||||
last_name: Rosa
|
||||
jersey_number: 7
|
||||
team: 1
|
||||
- model: players.player
|
||||
pk: 8
|
||||
fields:
|
||||
first_name: Lou
|
||||
last_name: Roseheart
|
||||
jersey_number: 8
|
||||
team: 1
|
||||
- model: players.player
|
||||
pk: 9
|
||||
fields:
|
||||
first_name: Wesley
|
||||
last_name: Poole
|
||||
jersey_number: 9
|
||||
team: 1
|
||||
- model: players.player
|
||||
pk: 10
|
||||
fields:
|
||||
first_name: Mullen
|
||||
last_name: Peterson
|
||||
jersey_number: 10
|
||||
team: 1
|
||||
- model: players.player
|
||||
pk: 11
|
||||
fields:
|
||||
first_name: Justice
|
||||
last_name: Spoon
|
||||
jersey_number: 11
|
||||
team: 1
|
||||
- model: players.player
|
||||
pk: 12
|
||||
fields:
|
||||
first_name: Caleb
|
||||
last_name: Alvarado
|
||||
jersey_number: 12
|
||||
team: 1
|
||||
- model: players.player
|
||||
pk: 13
|
||||
fields:
|
||||
first_name: Atlas
|
||||
last_name: Guerra
|
||||
jersey_number: 13
|
||||
team: 1
|
||||
- model: players.player
|
||||
pk: 14
|
||||
fields:
|
||||
first_name: Swamuel
|
||||
last_name: Mora
|
||||
jersey_number: 14
|
||||
team: 1
|
||||
@@ -1,7 +0,0 @@
|
||||
from django import forms
|
||||
from .models import Player
|
||||
|
||||
class PlayerForm(forms.ModelForm):
|
||||
class Meta:
|
||||
model = Player
|
||||
fields = ['first_name', 'last_name', 'jersey_number', 'team']
|
||||
@@ -1,37 +0,0 @@
|
||||
# Generated by Django 3.2.6 on 2021-11-07 17:43
|
||||
|
||||
from django.db import migrations, models
|
||||
import django.db.models.deletion
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
initial = True
|
||||
|
||||
dependencies = [
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.CreateModel(
|
||||
name='Player',
|
||||
fields=[
|
||||
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||
('first_name', models.CharField(max_length=200)),
|
||||
('last_name', models.CharField(max_length=200)),
|
||||
('jersey_number', models.IntegerField()),
|
||||
],
|
||||
options={
|
||||
'unique_together': {('first_name', 'last_name')},
|
||||
},
|
||||
),
|
||||
migrations.CreateModel(
|
||||
name='Stat',
|
||||
fields=[
|
||||
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||
('batting_avg', models.DecimalField(decimal_places=3, default=0, max_digits=4)),
|
||||
('onbase_pct', models.DecimalField(decimal_places=3, default=0, max_digits=4)),
|
||||
('slugging_pct', models.DecimalField(decimal_places=3, default=0, max_digits=4)),
|
||||
('player', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='players.player')),
|
||||
],
|
||||
),
|
||||
]
|
||||
@@ -1,17 +0,0 @@
|
||||
# Generated by Django 3.2.6 on 2021-11-07 18:46
|
||||
|
||||
from django.db import migrations
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('players', '0001_initial'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.RenameModel(
|
||||
old_name='Stat',
|
||||
new_name='StatLine',
|
||||
),
|
||||
]
|
||||
@@ -1,20 +0,0 @@
|
||||
# Generated by Django 3.2.6 on 2021-11-09 02:24
|
||||
|
||||
from django.db import migrations, models
|
||||
import django.db.models.deletion
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('teams', '0001_initial'),
|
||||
('players', '0002_rename_stat_statline'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AddField(
|
||||
model_name='player',
|
||||
name='team',
|
||||
field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='teams.team'),
|
||||
),
|
||||
]
|
||||
@@ -1,32 +0,0 @@
|
||||
from django.db import models
|
||||
from teams.models import Team
|
||||
|
||||
class Player(models.Model):
|
||||
first_name = models.CharField(max_length=200)
|
||||
last_name = models.CharField(max_length=200)
|
||||
jersey_number = models.IntegerField()
|
||||
team = models.ForeignKey(Team, null=True, on_delete=models.CASCADE)
|
||||
|
||||
def __str__(self):
|
||||
return f"{self.last_name}, {self.first_name}"
|
||||
|
||||
class Meta:
|
||||
unique_together = ('first_name', 'last_name',)
|
||||
|
||||
class StatLine(models.Model):
|
||||
player = models.ForeignKey(Player, on_delete=models.CASCADE)
|
||||
batting_avg = models.DecimalField(max_digits=4, decimal_places=3, default=0)
|
||||
onbase_pct = models.DecimalField(max_digits=4, decimal_places=3, default=0)
|
||||
slugging_pct = models.DecimalField(max_digits=4, decimal_places=3, default=0)
|
||||
|
||||
def __str__(self):
|
||||
return f"{self.slash_line}"
|
||||
|
||||
@property
|
||||
def slash_line(self):
|
||||
return "/".join([
|
||||
f"{self.batting_avg:.3f}".lstrip("0"),
|
||||
f"{self.onbase_pct:.3f}".lstrip("0"),
|
||||
f"{self.slugging_pct:.3f}".replace("0.",".")
|
||||
]
|
||||
)
|
||||
@@ -1,58 +0,0 @@
|
||||
from django.test import TestCase, Client
|
||||
from django.urls import reverse
|
||||
from .models import Player
|
||||
|
||||
FIXTURES = ['blaseball']
|
||||
|
||||
class TestPlayerModel(TestCase):
|
||||
fixtures = FIXTURES
|
||||
|
||||
def test_query_player(self):
|
||||
"""
|
||||
Return the desired player
|
||||
"""
|
||||
player = Player.objects.get(id=1)
|
||||
self.assertEqual(player.first_name, "Edric")
|
||||
self.assertEqual(player.last_name, "Tosser")
|
||||
self.assertEqual(player.jersey_number, 1)
|
||||
self.assertEqual(player.team.name, "Chicago Firefighters")
|
||||
|
||||
class TestPlayerViews(TestCase):
|
||||
fixtures = FIXTURES
|
||||
|
||||
def test_player_list(self):
|
||||
response = self.client.get(reverse('players list'))
|
||||
self.assertEqual(response.status_code, 200)
|
||||
|
||||
def test_player_edit(self):
|
||||
response = self.client.get(reverse('edit player', args=[1]))
|
||||
self.assertEqual(response.status_code, 200)
|
||||
|
||||
# create new player
|
||||
new_player_data = {
|
||||
'first_name': "A new player first name",
|
||||
'last_name': "A new player last name",
|
||||
'jersey_number':99,
|
||||
'team':1
|
||||
}
|
||||
|
||||
response = self.client.post(reverse('edit player', args=[0]), data=new_player_data)
|
||||
self.assertEqual(201, response.status_code)
|
||||
new_player = Player.objects.get(id=response.context['id'])
|
||||
self.assertEqual(new_player_data['first_name'], new_player.first_name)
|
||||
self.assertEqual(new_player_data['last_name'], new_player.last_name)
|
||||
|
||||
# modify player
|
||||
modified_player_data = {
|
||||
'first_name': "A changed player first name",
|
||||
'last_name': "A changed player last name",
|
||||
'jersey_number': 99,
|
||||
'team': 1
|
||||
}
|
||||
response = self.client.post(reverse('edit player', args=[1]), data=modified_player_data)
|
||||
self.assertEqual(200, response.status_code)
|
||||
self.assertEqual(1, response.context['id'])
|
||||
modified_player = Player.objects.get(id=response.context['id'])
|
||||
self.assertEqual(modified_player_data['first_name'], modified_player.first_name)
|
||||
self.assertEqual(modified_player_data['last_name'], modified_player.last_name)
|
||||
|
||||
@@ -1,12 +0,0 @@
|
||||
from django.urls import path, include
|
||||
|
||||
from .views import PlayerListView, PlayerEditView
|
||||
|
||||
from . import views
|
||||
|
||||
urlpatterns = [
|
||||
path('', views.root, name="root"),
|
||||
path('list', PlayerListView.as_view(), name='players list'),
|
||||
path('edit/<int:id>', PlayerEditView.as_view(), name="edit player"),
|
||||
path('edit', PlayerEditView.as_view(), name="edit player")
|
||||
]
|
||||
@@ -1,27 +0,0 @@
|
||||
from django.shortcuts import render, redirect, get_object_or_404
|
||||
from django.views.generic.list import ListView
|
||||
from django.http import HttpResponse
|
||||
from django.urls import reverse
|
||||
from .models import Player
|
||||
from .forms import PlayerForm
|
||||
from lib.views import BenchcoachListView, BenchcoachEditView
|
||||
|
||||
# Create your views here.
|
||||
|
||||
class PlayerListView(BenchcoachListView):
|
||||
Model = Player
|
||||
edit_url = 'edit player'
|
||||
list_url = 'players list'
|
||||
page_title = "Players"
|
||||
title_strf = "{first_name} {last_name}"
|
||||
subtitle_strf = "#{jersey_number}"
|
||||
active_tabs = ['members_tab']
|
||||
|
||||
def root(request):
|
||||
return redirect('/players/list')
|
||||
|
||||
class PlayerEditView(BenchcoachEditView):
|
||||
Form = PlayerForm
|
||||
Model = Player
|
||||
edit_url = 'edit player'
|
||||
list_url = 'players list'
|
||||
Reference in New Issue
Block a user