Consolidated schedule into an events list.
This commit is contained in:
@@ -2,5 +2,5 @@ from django.http import HttpResponse
|
|||||||
from django.shortcuts import render
|
from django.shortcuts import render
|
||||||
|
|
||||||
def welcome(request):
|
def welcome(request):
|
||||||
pages = ['schedule', 'teams list', 'venues list', 'players list']
|
pages = ['events list', 'teams list', 'venues list', 'players list']
|
||||||
return render(request,'home.html',{'pages':pages})
|
return render(request,'home.html',{'pages':pages})
|
||||||
@@ -1,16 +0,0 @@
|
|||||||
{% extends 'base.html' %}{% block title %} {{ title }} {% endblock %}{% block content %}
|
|
||||||
|
|
||||||
<h1>{{ title }}</h1>
|
|
||||||
<ol class="list-group">
|
|
||||||
{% for event in events %}
|
|
||||||
<li class="list-group-item fs-6">
|
|
||||||
<span class="fs-5 fw-bold" style="text-transform: uppercase">{{ event.away_team.name }} vs. {{ event.home_team.name }}</span> <br>
|
|
||||||
{{ event.start|date:"l, F j, Y g:i A" }} <br>
|
|
||||||
{{ event.venue.name }} <br>
|
|
||||||
<a class="btn btn-primary btn-sm" href="{% url 'edit event' event.id%}" role="button">Edit Event Details</a>
|
|
||||||
<a class="btn btn-primary btn-sm" href="{% url 'edit lineup' event_id=event.id%}" role="button">Edit Lineup</a>
|
|
||||||
</li>
|
|
||||||
{% endfor %}
|
|
||||||
</ol>
|
|
||||||
|
|
||||||
{% endblock %}
|
|
||||||
@@ -6,7 +6,7 @@ from . import views
|
|||||||
|
|
||||||
urlpatterns = [
|
urlpatterns = [
|
||||||
path('', views.root, name="root"),
|
path('', views.root, name="root"),
|
||||||
path('schedule', views.schedule, name="schedule"),
|
path('list', views.list, name="events list"),
|
||||||
path('edit/<int:id>', views.edit, name="edit event"),
|
path('edit/<int:id>', views.edit, name="edit event"),
|
||||||
path('edit', views.edit, name="edit event"),
|
path('edit', views.edit, name="edit event"),
|
||||||
path('edit', views.edit, name="edit event")
|
path('edit', views.edit, name="edit event")
|
||||||
|
|||||||
@@ -8,9 +8,30 @@ from django.http import HttpResponse
|
|||||||
def root(request):
|
def root(request):
|
||||||
return redirect('/events/schedule')
|
return redirect('/events/schedule')
|
||||||
|
|
||||||
def schedule(request):
|
def list(request):
|
||||||
events = Event.objects.all()
|
events = Event.objects.all()
|
||||||
return render(request, 'events/schedule.html', {'title':'Schedule', 'events': events})
|
context = {
|
||||||
|
'title': "Events",
|
||||||
|
'items': [
|
||||||
|
{
|
||||||
|
'id': event.id,
|
||||||
|
'title': f'{event.away_team.name} vs. {event.home_team.name}',
|
||||||
|
'body':f'{event.start:%a, %b %-d, %-I:%M %p},\n{event.venue.name}',
|
||||||
|
'buttons':[
|
||||||
|
{
|
||||||
|
'label':'Edit',
|
||||||
|
'href':reverse('edit event', args=[event.id])
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'label': 'Edit Lineup',
|
||||||
|
'href': reverse('edit lineup', args=[event.id])
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
for event in events
|
||||||
|
]
|
||||||
|
}
|
||||||
|
return render(request, 'list.html', context)
|
||||||
|
|
||||||
def edit(request, id=0):
|
def edit(request, id=0):
|
||||||
# if this is a POST request we need to process the form data
|
# if this is a POST request we need to process the form data
|
||||||
|
|||||||
@@ -9,15 +9,24 @@ def root(request):
|
|||||||
return redirect('/players/list')
|
return redirect('/players/list')
|
||||||
|
|
||||||
def list(request):
|
def list(request):
|
||||||
players = Player.objects.all()
|
items = Player.objects.all()
|
||||||
return render(request, 'list.html', {'title': "Players",
|
context = {
|
||||||
'items': [
|
'title': "Players",
|
||||||
{'id':player.id,
|
'items': [
|
||||||
'title':f"{player.first_name} {player.last_name}",
|
{'id': item.id,
|
||||||
'subtitle':f"{player.jersey_number}"
|
'title': f"{item.first_name} {item.last_name}",
|
||||||
}
|
'subtitle': f"{item.jersey_number}",
|
||||||
for player in players],
|
'buttons': [
|
||||||
'edit_url_name': 'edit player'})
|
{
|
||||||
|
'label': 'Edit',
|
||||||
|
'href': reverse('edit player', args=[item.id])
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
for item in items]
|
||||||
|
}
|
||||||
|
|
||||||
|
return render(request, 'list.html', context)
|
||||||
|
|
||||||
def edit(request, id=0):
|
def edit(request, id=0):
|
||||||
# if this is a POST request we need to process the form data
|
# if this is a POST request we need to process the form data
|
||||||
|
|||||||
@@ -8,14 +8,23 @@ def root(request):
|
|||||||
return redirect('/teams/list')
|
return redirect('/teams/list')
|
||||||
|
|
||||||
def list(request):
|
def list(request):
|
||||||
teams = Team.objects.all()
|
items = Team.objects.all()
|
||||||
return render(request, 'list.html', {'title': "Players",
|
context = {
|
||||||
'items': [
|
|
||||||
{'id':team.id,
|
'title': "Teams",
|
||||||
'title':f"{team.name}"
|
'items': [
|
||||||
}
|
{'id': item.id,
|
||||||
for team in teams],
|
'title': f"{item.name}",
|
||||||
'edit_url_name': 'edit team'})
|
'buttons': [
|
||||||
|
{
|
||||||
|
'label': 'Edit',
|
||||||
|
'href': reverse('edit team', args=[item.id])
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
for item in items]
|
||||||
|
}
|
||||||
|
return render(request, 'list.html', context)
|
||||||
|
|
||||||
def edit(request, id=0):
|
def edit(request, id=0):
|
||||||
# if this is a POST request we need to process the form data
|
# if this is a POST request we need to process the form data
|
||||||
|
|||||||
@@ -20,7 +20,7 @@
|
|||||||
<div class="collapse navbar-collapse">
|
<div class="collapse navbar-collapse">
|
||||||
<ul class="navbar-nav mr-auto">
|
<ul class="navbar-nav mr-auto">
|
||||||
<li>
|
<li>
|
||||||
<a class="nav-link" href="{% url 'schedule' %}">Schedule</a>
|
<a class="nav-link" href="{% url 'events list' %}">Events</a>
|
||||||
</li>
|
</li>
|
||||||
<li class="nav-item">
|
<li class="nav-item">
|
||||||
<a class="nav-link" href="{% url 'players list' %}">Players</a>
|
<a class="nav-link" href="{% url 'players list' %}">Players</a>
|
||||||
|
|||||||
@@ -7,9 +7,15 @@
|
|||||||
<ol class="list-group">
|
<ol class="list-group">
|
||||||
{% for item in items %}
|
{% for item in items %}
|
||||||
<li class="list-group-item">
|
<li class="list-group-item">
|
||||||
<span class="fs-5 fw-bold">{{ item.title }}</span> <span class="fs-6">{{ item.subtitle }}</span>
|
<span class="fs-5 fw-bold">{{ item.title }}</span>
|
||||||
|
<span class="fs-6">{{ item.subtitle }}</span>
|
||||||
|
{% if item.body %}
|
||||||
|
<br><span class="fs-6">{{ item.body }}</span>
|
||||||
|
{% endif %}
|
||||||
<br>
|
<br>
|
||||||
<a class="btn btn-primary btn-sm" href="{% url edit_url_name item.id%}" role="button">Edit</a>
|
{% for button in item.buttons %}
|
||||||
|
<a class="btn btn-primary btn-sm" href="{{ button.href }}" role="button">{{ button.label }}</a>
|
||||||
|
{% endfor %}
|
||||||
</li>
|
</li>
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
</ol>
|
</ol>
|
||||||
|
|||||||
@@ -8,14 +8,22 @@ def root(request):
|
|||||||
return redirect('/venues/list')
|
return redirect('/venues/list')
|
||||||
|
|
||||||
def list(request):
|
def list(request):
|
||||||
venues = Venue.objects.all()
|
items = Venue.objects.all()
|
||||||
return render(request, 'list.html', {'title': "Venues",
|
context = {
|
||||||
'items': [
|
'title': "Venues",
|
||||||
{'id':venue.id,
|
'items': [
|
||||||
'title':f"{venue.name}"
|
{'id': item.id,
|
||||||
}
|
'title': f"{item.name}",
|
||||||
for venue in venues],
|
'buttons': [
|
||||||
'edit_url_name': 'edit venue'})
|
{
|
||||||
|
'label': 'Edit',
|
||||||
|
'href': reverse('edit venue', args=[item.id])
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
for item in items]
|
||||||
|
}
|
||||||
|
return render(request, 'list.html', context)
|
||||||
|
|
||||||
|
|
||||||
def edit(request, id=0):
|
def edit(request, id=0):
|
||||||
|
|||||||
Reference in New Issue
Block a user