rafalp/Misago

Replace thread queryset plugin hooks used by thread detail view and private thread detail views

Fermée

#2 078 ouverte le 17 mai 2026

 (0 commentaire) (0 réaction) (0 personne assignée)Python (555 forks)batch import
area: backendfeature: extensionsfeature: thread pagehelp wanted

Métriques du dépôt

Stars
 (2 775 étoiles)
Métriques de merge PR
 (Merge moyen 2j 6h) (37 PRs mergées en 30 j)

Description

Those functions no longer exist on thread detail views:

  • get_thread_queryset
  • get_private_thread_queryset

Instead, we should implement get_thread_detail_view_select_related and get_private_thread_detail_view_select_related hooks that will take HttpRequest as only argument and return list[str].

DetailView should be updated to implement get_thread_select_related method:

def get_thread_select_related(self, request: HttpRequest) -> list[str]:
    return ["category"]

In ThreadDetailView:

def get_thread_select_related(self, request: HttpRequest) -> list[str]:
    return get_thread_detail_view_select_related_hook(super().get_thread_select_related, request)

In PrivateThreadDetailView:

def get_thread_select_related(self, request: HttpRequest) -> list[str]:
    return get_private_thread_detail_view_select_related_hook(super().get_thread_select_related, request)

get_thread calls in those detail views should be updated to self.get_thread(..., select_Related=self.get_thread_select_related(request))

Guide contributeur