diff --git a/django/contrib/admin/options.py b/django/contrib/admin/options.py
index e08cd9c..fed9b1c 100644
a
|
b
|
from django.db.models.constants import LOOKUP_SEP
|
21 | 21 | from django.db.models.related import RelatedObject |
22 | 22 | from django.db.models.fields import BLANK_CHOICE_DASH, FieldDoesNotExist |
23 | 23 | from django.db.models.sql.constants import QUERY_TERMS |
24 | | from django.http import Http404, HttpResponse, HttpResponseRedirect |
| 24 | from django.http import (Http404, HttpResponse, HttpResponseRedirect, |
| 25 | StreamingHttpResponse) |
25 | 26 | from django.shortcuts import get_object_or_404 |
26 | 27 | from django.template.response import SimpleTemplateResponse, TemplateResponse |
27 | 28 | from django.utils.decorators import method_decorator |
… |
… |
class ModelAdmin(BaseModelAdmin):
|
959 | 960 | |
960 | 961 | response = func(self, request, queryset) |
961 | 962 | |
962 | | # Actions may return an HttpResponse, which will be used as the |
963 | | # response from the POST. If not, we'll be a good little HTTP |
964 | | # citizen and redirect back to the changelist page. |
965 | | if isinstance(response, HttpResponse): |
| 963 | # Actions may return an HttpResponse or a StreamingHttpResponse, |
| 964 | # which will be used as the response from the POST. If not, we'll |
| 965 | # be a good little HTTP citizen and redirect back to the changelist |
| 966 | # page. |
| 967 | if isinstance(response, (HttpResponse, StreamingHttpResponse)): |
966 | 968 | return response |
967 | 969 | else: |
968 | 970 | return HttpResponseRedirect(request.get_full_path()) |