ipv6ula/ipv6ula/views.py

39 lines
929 B
Python

from django.views.generic.list import ListView
from django.views.generic.edit import CreateView
from django.contrib.auth import views as auth_views
from django.contrib.auth.mixins import LoginRequiredMixin
from django.contrib.auth import logout
from django.shortcuts import redirect
import ipaddress
from django.conf import settings
from .models import *
from .forms import ULAForm
class IndexView(ListView):
model = ULA
paginate_by = 50
queryset = ULA.objects.order_by('prefix')
class SubmitView(LoginRequiredMixin, CreateView):
model = ULA
form_class = ULAForm
login_url = '/login/'
success_url = '/'
def form_valid(self, form):
form.instance.owner = self.request.user
return super(SubmitView, self).form_valid(form)
class LoginView(auth_views.LoginView):
template_name = 'ipv6ula/login.html'
def logout_view(request):
logout(request)
return redirect("/")