如何在Django中获取Api主体参数

如何在Django中获取Api主体参数,django,django-models,django-rest-framework,django-views,Django,Django Models,Django Rest Framework,Django Views,我想在视图中获取api主体参数。我想应用搜索筛选器。我使用self.request.GET.GET'query'但是它总是不给任何东西。我怎样才能从邮递员那里得到身体参数,我正在发送查询:身体中的活动。但我不明白 class JobsListAPIView(generics.ListAPIView): serializer_class = JobListSerialzer # pagination_class = ListLimitOffsetPagination per

我想在视图中获取api主体参数。我想应用搜索筛选器。我使用self.request.GET.GET'query'但是它总是不给任何东西。我怎样才能从邮递员那里得到身体参数,我正在发送查询:身体中的活动。但我不明白

class JobsListAPIView(generics.ListAPIView):
    serializer_class = JobListSerialzer
    # pagination_class = ListLimitOffsetPagination
    permission_classes = [UserIsAuthenticated]

    def get_queryset(self, *args, **kwargs):
        # print('self.request.auth', self.request.auth.application.user.userprofile.user_company.id)

        qs = Jobs.objects.exclude(job_is_deleted = True).filter(
            job_company = self.request.auth.application.company
        )

        query = self.request.GET.get('query')
        print('query: ', request.data)

        if query:
            qs = qs.filter(job_status=query)

        return qs

为了获取主体参数,我假设您正在使用POST方法来请求api。获取POST数据与self.request.POST.get'query'一样简单。

为了获取主体参数,我假设您使用POST方法来请求api。获取POST数据与self.request.POST.get'query'一样简单。

在纯Django中,获取正文内容的方法是使用request.POST,获取查询参数的方法是使用request.get。由于您似乎正在使用Django rest framework视图,因此建议改用其request.data和request.query_参数

假设邮递员发送的数据格式正确,在这种情况下,您可以使用:

query = self.request.data.get("query")

在纯Django中,获取正文内容的方法是使用request.POST,获取查询参数的方法是使用request.get。由于您似乎正在使用Django rest framework视图,因此建议改用其request.data和request.query_参数

假设邮递员发送的数据格式正确,在这种情况下,您可以使用:

query = self.request.data.get("query")

您的实际问题似乎不在于对实体数据进行查询。 但是你没有正确地通过它。 您应该通过/url/?query=Activereplaced:with=。
当您传递query:Active时,它将整个query:Active作为body中的一个键。

您的实际问题似乎不是获取查询参数body数据。 但是你没有正确地通过它。 您应该通过/url/?query=Activereplaced:with=。
当您传递query:Active时,它将整个query:Active作为主体中的一个键。

您的URL是什么?它应该是**=**活动的。在您的示例中,您说query**:*Active。您的URL是什么?它应该是**=**活动的。在您的示例中,您说query**:*Active。