从ajax发送表到Django Rest框架

时间:2019-04-10 18:23:57

标签: ajax django django-rest-framework

我正在尝试将JS表发送到Django Rest API视图并在 get_queryset()函数中读取该参数

这是我的ajax电话:

$.ajax({
   type       : "GET",
   url        : fetchDataUrl,
   data       : {
     table : [10,20,30,40,50],
   },
   success    : function(data){

   },
   error      : function(data){

   }
});

这是我的APIView:

class LivreListAPIView(generics.ListAPIView):
    serializer_class    = BookSerializer

    def get_queryset(self, *args, **kwargs):
        table        = self.request.GET.get("table",None)
        ...

1 个答案:

答案 0 :(得分:0)

self.request.GET是QueryDict对象,因此可以通过调用将其强制转换为python dict

data = dict(self.request.GET)
#under python 3

然后我们可以通过在表名之后添加 [] 来访问表

例如:

#In my case
data = dict(queryDict)
table = data.get('table[]')

更新:

更好的方法是使用 getlist() 所以:

table = self.request.GET.getlist('table[]')