我是 Django 的新手并做出react。上周我已经遇到了这个错误,那次是请求 URL 错误。昨天我改变了后端设计,现在它的错误再次发生。
这是我的网址=>
urlpatterns = [
url(r'^allowances_mas/', AllowanceAPIView.as_view()),
url(r'^allowances_mas/(?P<pk>\d+)/$', AllowanceAPIView.as_view()),....
这是我的内部视图 put 方法,
def put(self,request,pk):
save_allowance = get_object_or_404(Allowance.objects.all(),pk=pk)
data = request.data.get('allowance')
serializer = AllowanceSerializer(instance=save_allowance,data=data,partial=True)
if serializer.is_valid():
allowance_saved=serializer.save()
return Response({"success":"Allowance '{}' updated successfully".format(allowance_saved.AllowID)})
else:
return Response({"fail":"'{}'".format(serializer.errors)})
这是来自 React axios 的 url 请求 =>
axios.put('http://127.0.0.1:8000/api/allowances_mas/1/', { allowance },{
headers: {
'Content-Type': 'application/json'
}
})
.then(res => {
axios.get('http://127.0.0.1:8000/api/allowances_mas/')
.then(res=>{
const resallowance=res.data.allowance;
this.setState({
allowances:resallowance
});
})
})
.catch(err=>{
console.log("error",err);
})
.finally(fin=>{
console.log(fin);
})
我可以执行 get 和 post 方法,但由于此错误,不能执行 put 和 delete 方法。我设置了 pk 键,为什么它仍然发生错误?谢谢。