Django CBV не отображается на странице при редактировании контекста

Вид внизу должен показывать задачи для зарегистрированного пользователя, но когда я просматриваю задачи постранично, я получаю

Cannot filter a query once a slice has been taken.

как мне фильтровать контекст, чтобы избежать ошибки при пагинации?

class TaskList(LoginRequiredMixin, ListView):
    model = Task
    context_object_name = 'tasks'
    template_name = 'TaskList.html'
    paginate_by = 2

    def get_context_data(self, **kwargs):
        context = super().get_context_data(**kwargs)
        context['tasks'] = context['tasks'].filter(user=self.request.user)

        return context

Используйте get_queryset() для фильтрации объектов в ListView:

def get_queryset(self):  # noqa: D102
    queryset = super().get_queryset()
    return queryset.filter(user=self.request.user)

Фильтрация в методе get_queryset() должна решить проблему - также удалите перегрузку метода get_context_data(), она не нужна.

Вернуться на верх