У меня есть следующая переменная в моем администраторе:
class ModelAdmin(admin.ModelAdmin):
qs = QuerySet
...
и следующее определение в администраторе:
def changelist_view(self, request, extra_context=None):
from django.contrib.admin.views.main import ChangeList
cl = ChangeList(request, self.model, list(self.list_display),
self.list_display_links, self.list_filter,
self.date_hierarchy, self.search_fields,
self.list_select_related,
self.list_per_page,
self.list_editable,
self)
ModelAdmin.qs = cl.get_query_set()
return super(ModelAdmin, self).changelist_view(request, extra_context=extra_context)
Я использую это для создания отчетов с отчетами Джеральдо какследующим образом:
def groupreport(self, request, extra_context=None):
resp = HttpResponse(mimetype='application/pdf')
report = MOdelGroupReport(queryset=ModelAdmin.qs.extra(order_by = ['project_string','code','-pub_date']))
report.generate_by(PDFGenerator, filename=resp)
return resp
Он хорошо работает на моей машине для разработки, однако, когда я развертываю его на сервере UWSGI, отчет печатает весь набор запросов, а не текущий отфильтрованный набор запросов.Есть ли лучший способ сделать это?