【问题标题】:i am trying to connect reactjs axios with django rest framework to make the post request. but i am getting POST 400 (Bad Request)我正在尝试将 reactjs axios 与 django rest 框架连接以发出发布请求。但我收到 POST 400(错误请求)
【发布时间】:2020-07-02 11:16:13
【问题描述】:

这里是axios代码:

axios({
      method: 'post',
      url: 'http://127.0.0.1:8000/api/form/',
      data: this.state,
      headers: {    
                 'Content-Type': 'application/json'}
    })
      .then(function (response) {
        console.log(response);
      })
      .catch(function (response) {
        console.log(response);
      });
  }

这里是views.py

class Formview(APIView):
    def post(self,request):
        Fprov=request.POST.get('selectedPro')
        Fdist=request.POST.get('selectedDistrict')
        FpalikaT=request.POST.get('selectedPalikaType')
        FpalikaN=request.POST.get('enteredPalikaName')
        FWardN=request.POST.get('enteredWardNo')
        FWardOf=request.POST.get('enteredWardOfficeAddress')
        FWardC=request.POST.get('enteredWardContactNo')
        new=Form(Province=Fprov,
             District=Fdist,
             PalikaType=FpalikaT,
             PalikaName=FpalikaN,
             Ward_No=FWardN,
             Ward_Office_Address=FWardOf,
             Ward_Contact_No=FWardC)
        new.save()

这里是 serializers.py

from rest_framework import serializers
from .models import Form

class FormSerializer(serializers.ModelSerializer):
    class Meta:
        model = Form
        fields = '__all__'

【问题讨论】:

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


    【解决方案1】:

    您需要使用FormSerializer 创建一个视图来处理请求数据。我建议创建基于类的视图,因为它使创建 API 变得非常容易。 Django Rest Framework 有很好的文档说明如何在此处创建这些视图:https://www.django-rest-framework.org/api-guide/generic-views/。创建视图并将数据作为request.data 而不是request.POST 传递到序列化程序。

    【讨论】:

      猜你喜欢
      • 2020-11-19
      • 2021-03-31
      • 2023-03-21
      • 2015-06-18
      • 2019-10-10
      • 1970-01-01
      • 2019-04-08
      • 2020-04-28
      • 2021-07-05
      相关资源
      最近更新 更多