【问题标题】:How to get input data from django request.POST如何从 django request.POST 获取输入数据
【发布时间】:2019-09-16 12:24:24
【问题描述】:

我想从我的前端获取输入数据,这样我就可以从我的后端创建一个对象。这是我的输入请求:

return axios.post('http://127.0.0.1:8000/api/products/',{
   name: name,
   description: description,
   category: this.category
},
this.config
)
.then(res=>this.props.update(res.data))
.catch(err=>console.err(err));

其中名称、描述和类别是我的输入参数,而 this.config 只是令牌。

在我的后端,我使用 Viewset 来处理我的所有请求。到目前为止,我有一个用于 GET,但现在我想要一个用于 POST。这是我的代码:

class ProductViewSet(viewsets.ModelViewSet):
    def list(self, request):
        user = request.user
        queryset = Product.objects.filter(user=user)
        serializer = ProductSerializer(queryset, many=True)
        return Response(serializer.data)
    def create(self, request):
        data = request.POST["name"]
        print("name",name)
        return Response("test")

我尝试了所有尝试从 request.POST 中提取我的信息的变体 我试过request.POST.get('name')request.POST['name'] 和其他东西。它们都返回 None/KeyError。我做错了什么?

【问题讨论】:

    标签: javascript python django reactjs django-rest-framework


    【解决方案1】:

    使用request.data

    name = request.data['name']
    

    这种情况仅适用于 DRF/Django 从您的客户端接收数据的情况。

    【讨论】:

      猜你喜欢
      • 2018-07-22
      • 2022-01-08
      • 2015-05-09
      • 1970-01-01
      • 2021-01-22
      • 1970-01-01
      • 2021-12-20
      • 2014-02-12
      • 1970-01-01
      相关资源
      最近更新 更多