MCPcopy
hub / github.com/rq/django-rq / failed_jobs

Function failed_jobs

django_rq/views.py:116–152  ·  view source on GitHub ↗
(request: HttpRequest, queue_index: int)

Source from the content-addressed store, hash-verified

114@never_cache
115@staff_member_required
116def failed_jobs(request: HttpRequest, queue_index: int) -> HttpResponse:
117 queue = get_queue_by_index(queue_index)
118
119 registry = FailedJobRegistry(queue.name, queue.connection)
120
121 items_per_page = 100
122 num_jobs = len(registry)
123 page = int(request.GET.get('page', 1))
124
125 if request.GET.get('desc', '1') == '1':
126 sort_direction = 'descending'
127 else:
128 sort_direction = 'ascending'
129
130 jobs = []
131
132 if num_jobs > 0:
133 last_page = int(ceil(num_jobs / items_per_page))
134 page_range = list(range(1, last_page + 1))
135 offset = items_per_page * (page - 1)
136 job_ids = registry.get_job_ids(offset, offset + items_per_page - 1, desc=sort_direction == 'descending')
137 jobs = get_jobs(queue, job_ids, registry)
138
139 else:
140 page_range = []
141
142 context_data = {
143 **each_context(request),
144 'queue': queue,
145 'queue_index': queue_index,
146 'jobs': jobs,
147 'num_jobs': num_jobs,
148 'page': page,
149 'page_range': page_range,
150 'sort_direction': sort_direction,
151 }
152 return render(request, 'django_rq/failed_jobs.html', context_data)
153
154
155@never_cache

Callers

nothing calls this directly

Calls 3

get_queue_by_indexFunction · 0.85
get_jobsFunction · 0.85
each_contextFunction · 0.85

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…