mirror of
https://github.com/ZwareBear/awx.git
synced 2026-05-03 05:11:49 -05:00
Move performance boost to access.py.
This commit is contained in:
@@ -241,10 +241,7 @@ class ListAPIView(generics.ListAPIView, GenericAPIView):
|
||||
# Base class for a read-only list view.
|
||||
|
||||
def get_queryset(self):
|
||||
qs = self.request.user.get_queryset(self.model)
|
||||
if getattr(self.model, 'spawned_by_workflow', False):
|
||||
qs = qs.select_related('unified_job_node__workflow_job')
|
||||
return qs
|
||||
return self.request.user.get_queryset(self.model)
|
||||
|
||||
def paginate_queryset(self, queryset):
|
||||
page = super(ListAPIView, self).paginate_queryset(queryset)
|
||||
|
||||
@@ -599,18 +599,18 @@ class UnifiedJobSerializer(BaseSerializer):
|
||||
elif isinstance(obj, AdHocCommand):
|
||||
res['stdout'] = reverse('api:ad_hoc_command_stdout', args=(obj.pk,))
|
||||
if obj.workflow_job_id:
|
||||
res['source_worklflow_job'] = reverse('api:workflow_job_detail', args=(obj.workflow_job_id,))
|
||||
res['source_workflow_job'] = reverse('api:workflow_job_detail', args=(obj.workflow_job_id,))
|
||||
return res
|
||||
|
||||
def get_summary_fields(self, obj):
|
||||
summary_fields = super(UnifiedJobSerializer, self).get_summary_fields(obj)
|
||||
if obj.spawned_by_workflow:
|
||||
summary_fields['source_worklflow_job'] = {}
|
||||
summary_fields['source_workflow_job'] = {}
|
||||
summary_obj = obj.unified_job_node.workflow_job
|
||||
for field in SUMMARIZABLE_FK_FIELDS['job']:
|
||||
val = getattr(summary_obj, field, None)
|
||||
if val is not None:
|
||||
summary_fields['source_worklflow_job'][field] = val
|
||||
summary_fields['source_workflow_job'][field] = val
|
||||
|
||||
return summary_fields
|
||||
|
||||
|
||||
Reference in New Issue
Block a user