@@ -90,9 +90,29 @@ def get_queryset(self, request):
9090
9191
9292class PersonnelInline (admin .TabularInline ):
93+
94+ def surge_alert_notification (self , obj ):
95+ if obj .surge_alert :
96+ return "%s (%d)" % (obj .surge_alert .message , obj .surge_alert .id )
97+ return "-"
98+
9399 model = models .Personnel
100+ # including surge_alert makes queries really, really heavy and timeout prone: instead of 20 queries it gives 13700.
101+ exclude = ("surge_alert" , "molnix_tags" )
94102 autocomplete_fields = ("country_from" ,)
95- readonly_fields = ("molnix_id" ,)
103+ readonly_fields = ("molnix_id" , "surge_alert_notification" )
104+
105+ def get_queryset (self , request ):
106+ return (
107+ super ()
108+ .get_queryset (request )
109+ .select_related (
110+ "country_from" ,
111+ "country_to" ,
112+ )
113+ )
114+ # "deployedperson_ptr", "country_from", "country_to", "deployment", "surge_alert", "surge_alert__event")
115+ # .prefetch_related("surge_alert")
96116
97117
98118class PersonnelDeploymentAdmin (CompareVersionAdmin , TranslationAdmin ):
@@ -107,7 +127,14 @@ class PersonnelDeploymentAdmin(CompareVersionAdmin, TranslationAdmin):
107127 )
108128
109129 def get_queryset (self , request ):
110- return super ().get_queryset (request ).select_related ("country_deployed_to" , "region_deployed_to" , "event_deployed_to" )
130+ return (
131+ super ()
132+ .get_queryset (request )
133+ .select_related ("country_deployed_to" , "region_deployed_to" , "event_deployed_to" , "appeal_deployed_to" )
134+ )
135+ # .prefetch_related("personnel_set", "personnel_set__deployment", "appeal_deployed_to__event",
136+ # "personnel_set__deployment__event_deployed_to", "personnel_set__deployedperson_ptr", "personnel_set__country_from",
137+ # "personnel_set__country_to", "personnel_set__surge_alert", "personnel_set__surge_alert__event")
111138
112139
113140class PartnerSocietyActivityAdmin (CompareVersionAdmin , TranslationAdmin ):
0 commit comments