bornhack-website/src/rideshare/views.py

53 lines
1.2 KiB
Python
Raw Normal View History

2018-08-08 20:18:39 +00:00
from django.contrib.auth.mixins import LoginRequiredMixin
from django.views.generic import (
ListView,
DetailView,
CreateView,
UpdateView,
DeleteView,
2018-08-09 12:36:21 +00:00
TemplateView,
2018-08-08 20:18:39 +00:00
)
from django.http import HttpResponseRedirect
from camps.mixins import CampViewMixin
from .models import Ride
class RideList(LoginRequiredMixin, CampViewMixin, ListView):
model = Ride
class RideDetail(LoginRequiredMixin, CampViewMixin, DetailView):
model = Ride
class RideCreate(LoginRequiredMixin, CampViewMixin, CreateView):
model = Ride
fields = ['location', 'when', 'seats', 'description']
def form_valid(self, form, **kwargs):
ride = form.save(commit=False)
ride.camp = self.camp
ride.user = self.request.user
ride.save()
self.object = ride
return HttpResponseRedirect(self.get_success_url())
class RideUpdate(LoginRequiredMixin, CampViewMixin, UpdateView):
model = Ride
fields = ['location', 'when', 'seats', 'description']
class RideDelete(LoginRequiredMixin, CampViewMixin, DeleteView):
model = Ride
2018-08-09 12:36:21 +00:00
class RideContactConfirm(LoginRequiredMixin, CampViewMixin, DetailView):
model = Ride
template_name = "rideshare/ride_contact_confirm.html"
# class RideContact(View):