Эх сурвалжийг харах

[Django upgrade] RemovedInDjango40Warning: request.is_ajax() is deprecated in Django3.1

ayush.goyal 4 жил өмнө
parent
commit
8ca089f780

+ 5 - 5
apps/filebrowser/src/filebrowser/views.py

@@ -258,7 +258,7 @@ def view(request, path):
       return display(request, path)
   except S3FileSystemException as e:
     msg = _("S3 filesystem exception.")
-    if request.is_ajax():
+    if request.headers.get('x-requested-with') == 'XMLHttpRequest':
       exception = {
         'error': smart_str(e)
       }
@@ -271,7 +271,7 @@ def view(request, path):
     if "Connection refused" in str(e):
       msg += _(" The HDFS REST service is not available. ")
 
-    if request.is_ajax():
+    if request.headers.get('x-requested-with') == 'XMLHttpRequest':
       exception = {
         'error': msg
       }
@@ -341,7 +341,7 @@ def edit(request, path, form=None):
       breadcrumbs=parse_breadcrumbs(path),
       is_embeddable=request.GET.get('is_embeddable', False),
       show_download_button=SHOW_DOWNLOAD_BUTTON.get())
-  if not request.is_ajax():
+  if not request.headers.get('x-requested-with') == 'XMLHttpRequest':
     data['stats'] = stats;
     data['form'] = form;
   return render("edit.mako", request, data)
@@ -685,7 +685,7 @@ def display(request, path):
     raise PopupException(_("Not a file: '%(path)s'") % {'path': path})
 
   # display inline files just if it's not an ajax request
-  if not request.is_ajax():
+  if not request.headers.get('x-requested-with') == 'XMLHttpRequest':
     if _can_inline_display(path):
       return redirect(reverse('filebrowser:filebrowser_views_download', args=[path]) + '?disposition=inline')
 
@@ -1196,7 +1196,7 @@ def generic_op(form_class, request, op, parameter_names, piggyback=None, templat
         ret["result_error"] = True
 
       ret['user'] = request.user
-      if request.is_ajax():
+      if request.headers.get('x-requested-with') == 'XMLHttpRequest':
         return HttpResponse()
       else:
         return render(template, request, ret)

+ 1 - 1
apps/jobsub/src/jobsub/views.py

@@ -102,7 +102,7 @@ def list_designs(request):
   owner = request.GET.get('owner', '')
   name = request.GET.get('name', '')
 
-  if request.is_ajax():
+  if request.headers.get('x-requested-with') == 'XMLHttpRequest':
     return render_json({
       'designs': _list_designs(request, owner, name)
     }, js_safe=True)

+ 1 - 1
desktop/core/src/desktop/lib/metrics/views.py

@@ -41,7 +41,7 @@ def index(request):
       'metric': global_registry().dump_metrics(),
   }
 
-  if request.is_ajax() or request.GET.get("format") == "json":
+  if request.headers.get('x-requested-with') == 'XMLHttpRequest' or request.GET.get("format") == "json":
     return JsonResponse(rep, json_dumps_params={'indent': indent})
   else:
     return render(

+ 1 - 1
desktop/core/src/desktop/lib/vcs/apis/github_api.py

@@ -75,7 +75,7 @@ class GithubApi(Api):
         'status': -1,
         'auth_url':auth_url
       }
-      if (request.is_ajax()):
+      if request.headers.get('x-requested-with') == 'XMLHttpRequest':
         return JsonResponse(response)
 
       return HttpResponseRedirect(auth_url)

+ 2 - 2
desktop/core/src/desktop/middleware.py

@@ -93,7 +93,7 @@ class AjaxMiddleware(MiddlewareMixin):
   GET parameters.
   """
   def process_request(self, request):
-    request.ajax = request.is_ajax() or request.GET.get("format", "") == "json"
+    request.ajax = request.headers.get('x-requested-with') == 'XMLHttpRequest' or request.GET.get("format", "") == "json"
     return None
 
 
@@ -568,7 +568,7 @@ class HtmlValidationMiddleware(MiddlewareMixin):
     return res
 
   def _is_html(self, request, response):
-    return not request.is_ajax() and \
+    return not request.headers.get('x-requested-with') == 'XMLHttpRequest' and \
         'html' in response['Content-Type'] and \
         200 <= response.status_code < 300
 

+ 2 - 2
desktop/core/src/desktop/views.py

@@ -347,7 +347,7 @@ def threads(request):
   out = string_io()
   dump_traceback(file=out)
 
-  if request.is_ajax():
+  if request.headers.get('x-requested-with') == 'XMLHttpRequest':
     return HttpResponse(out.getvalue(), content_type="text/plain")
   else:
     return render("threads.mako", request, {'text': out.getvalue(), 'is_embeddable': request.GET.get('is_embeddable', False)})
@@ -458,7 +458,7 @@ def serve_500_error(request, *args, **kwargs):
         return django.views.debug.technical_500_response(request, *exc_info)
       else:
         tb = traceback.extract_tb(exc_info[2])
-        if request.is_ajax():
+        if request.headers.get('x-requested-with') == 'XMLHttpRequest':
           tb = '\n'.join(tb.format())
         return render("500.mako", request, {'traceback': tb})
     else: