23 lines
716 B
Python
23 lines
716 B
Python
from django.contrib.auth.mixins import LoginRequiredMixin
|
|
from django.views import generic
|
|
|
|
from .models import Project
|
|
|
|
class IndexView(LoginRequiredMixin, generic.ListView):
|
|
template_name = 'projects/index.html'
|
|
context_object_name = 'project_list'
|
|
|
|
def get_queryset(self):
|
|
return Project.objects.order_by('project_key')
|
|
|
|
|
|
class ProjectView(LoginRequiredMixin, generic.DetailView):
|
|
model = Project
|
|
template_name = 'projects/view.html'
|
|
slug_field = slug_url_kwarg = 'project_key'
|
|
|
|
def get_context_data(self, **kwargs):
|
|
context = super().get_context_data(**kwargs)
|
|
context['issue_list'] = self.get_object().issue_set.order_by('create_date')
|
|
return context
|