from django.views import generic from django.urls import reverse_lazy from .models import Event from .forms import EventForm from django.contrib.auth.mixins import LoginRequiredMixin class EventListView(LoginRequiredMixin, generic.ListView): model = Event context_object_name = 'events' template_name = 'events/event_list.html' paginate_by = 10 class EventCreateView(LoginRequiredMixin, generic.CreateView): model = Event form_class = EventForm template_name = 'events/event_form.html' success_url = reverse_lazy('events:event_list') class EventUpdateView(LoginRequiredMixin, generic.UpdateView): model = Event form_class = EventForm template_name = 'events/event_form.html' success_url = reverse_lazy('events:event_list') class EventDeleteView(LoginRequiredMixin, generic.DeleteView): model = Event template_name = 'events/event_confirm_delete.html' success_url = reverse_lazy('events:event_list')