This repository has been archived on 2019-11-11. You can view files and clone it, but you cannot make any changes to it's state, such as pushing and creating new issues, pull requests or comments.
tofu/issues/views.py

43 lines
1.1 KiB
Python
Raw Permalink Normal View History

from django.contrib.auth.decorators import login_required
from django.contrib.auth.mixins import LoginRequiredMixin
2019-06-03 00:14:40 +02:00
from django.http import HttpResponseRedirect
2019-06-03 17:57:25 +02:00
from django.shortcuts import render
from django.views import generic
2019-06-03 00:14:40 +02:00
from .forms import IssueForm
from .models import Issue
2019-03-20 22:14:36 +01:00
class IndexView(LoginRequiredMixin, generic.ListView):
2019-06-03 17:57:25 +02:00
template_name = 'issues/index.html'
context_object_name = 'issue_list'
2019-06-03 17:57:25 +02:00
def get_queryset(self):
return Issue.objects.order_by('create_date')
class DetailView(LoginRequiredMixin, generic.DetailView):
2019-06-03 17:57:25 +02:00
model = Issue
template_name = 'issues/detail.html'
pk_url_kwarg = 'issue_id'
2019-06-03 00:14:40 +02:00
# class NewIssueForm(LoginRequiredMixin, generic.FormView):
2019-06-03 17:57:25 +02:00
# template_name = 'issues/new.html'
# form_class = IssueForm
# success_url =
2019-06-03 00:14:40 +02:00
@login_required
2019-06-03 00:14:40 +02:00
def new(request):
if request.method == 'POST':
form = IssueForm(request.POST)
if form.is_valid():
new_issue = form.save()
return HttpResponseRedirect('/issues/{}'.format(new_issue.id))
else:
form = IssueForm()
return render(request, 'issues/new.html', {
'form': form,
})