Skip to content

Commit 4c43b92

Browse files
committed
Оптимизирована загрузка менеджеров и других полей для облегчения SQL запросов
1 parent 08c7a19 commit 4c43b92

1 file changed

Lines changed: 5 additions & 2 deletions

File tree

partner_programs/admin.py

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ class PartnerProgramMaterialInline(admin.StackedInline):
2727
extra = 1
2828
fields = ("title", "url", "file")
2929
readonly_fields = ("datetime_created", "datetime_updated")
30+
autocomplete_fields = ("file",)
3031

3132

3233
class PartnerProgramFieldInline(admin.TabularInline):
@@ -64,7 +65,7 @@ class Meta:
6465
)
6566
list_filter = ("city",)
6667

67-
filter_horizontal = ("managers",)
68+
autocomplete_fields = ("managers",)
6869
date_hierarchy = "datetime_started"
6970
readonly_fields = ("datetime_created", "datetime_updated")
7071
fieldsets = (
@@ -100,7 +101,9 @@ class Meta:
100101
)
101102

102103
def get_queryset(self, request: HttpRequest) -> QuerySet[PartnerProgram]:
103-
qs = super().get_queryset(request)
104+
qs = super().get_queryset(request).prefetch_related(
105+
"managers", "materials", "fields"
106+
)
104107
if "Руководитель программы" in request.user.groups.all().values_list(
105108
"name", flat=True
106109
):

0 commit comments

Comments
 (0)