-
Notifications
You must be signed in to change notification settings - Fork 0
/
views.py
38 lines (30 loc) · 1.04 KB
/
views.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
from django.shortcuts import render, redirect, get_object_or_404, render_to_response
from django.views import generic
from django.utils import timezone
from datetime import datetime
from django.http import HttpResponseRedirect
from django.core.urlresolvers import reverse
from django import forms
from .models import Shift, Run, NewRunForm
class IndexView(generic.ListView):
template_name = 'shifts/index.html'
context_object_name = 'latest_shifts_list'
def get_queryset(self):
return Shift.objects.most_recent()
class ResultsView(generic.DetailView):
model = Shift
template_name = 'shifts/results.html'
class DetailView(generic.DetailView):
model = Shift
template_name = 'shifts/detail.html'
def create_run(request, shift_id):
if request.method == 'POST':
form = NewRunForm(request.POST)
if form.is_valid():
new_obj = form.save(commit=False)
new_obj.run = request.run
form.save()
return HttpResponseRedirect('/')
else:
form = NewRunForm()
return render(request, 'shifts/results.html', {'form': form})