from django.shortcuts import render from django.contrib.auth.mixins import PermissionRequiredMixin from django.views.generic import ListView, DetailView, CreateView from django.contrib.auth.models import Permission from django.contrib.auth.decorators import permission_required from .models import Project from users.models import CustomUser from .forms import ProjectForm class ProjectListView(ListView): model = Project def get_context_data(self, **kwargs): context = super(ProjectListView, self).get_context_data(**kwargs) # context['permissions'] = Permission.objects.filter(group__user=self.request.user.id) user = CustomUser.objects.get(id=self.request.user.id) # context['permissions'] = user.user_permissions.all() context['permissions'] = Permission.objects.filter(group__user=user) context['user_id'] = user return context class ProjectDetailView(DetailView): model = Project class ProjectCreateView(PermissionRequiredMixin, CreateView): model = Project permission_required = ['projects.add_project'] form_class = ProjectForm success_url = '/projects/'