如何使用 Django ajax“GET 方法”

问题描述

我想在 Django 中做一个 ajax GET 和 POST 方法。我的 post 方法运行良好,但 GET 方法不是。请参阅下面的代码

网址

path("getupdates/",views.getupdates,name="getupdates")

观看次数

def getupdates(request):
 if request.user.is_authenticated:
  if request.method == "GET":
   user_instance = User.objects.filter(username=request.user.username)[0]
   info = userinfo.objects.filter(username=user_instance.username)
   game = spinwheel.objects.filter(user=info[0])
   get_value= request.body
   data = {"info":info}
   print(data)
   return render(request,'spin.html',{"info":info})

Js-ajax

$.ajax({
 url: 'getupdates/',// datatype: 'json',data : data,type: 'GET',sucess: function(data) {
  console.log("refreshed!")
 }
});

我希望 ajax GET 方法更新我的 HTML 的某些部分。

解决方法

您可以检查 request.is_ajax()。 如果这是真的,那么您将使用您的数据返回 JsonResponce。 并将它们插入到您的 html 中,而无需重新加载整个页面。

示例

class ViewName(View):
    def get(self,requst):
        if requst.is_ajax():
            # your code

            return JsonResponse({'data': data})

    def post(self,requst):
        # your code

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...