我想通过axios将服务器的数据发布到前端, 但是我不断遇到错误:
/ p /中的IntegrityError (1048,“列'category_owner_id'不能为空”)
我在后端使用DRF,在前端使用React。这是我的React和DRF部分。
getCategory.js
axios({
url: 'http://127.0.0.1:8000/profile/',
method: 'POST',
data: {
data: this.state.information,
},
contentType: 'application/json',
})
.then(res => {
console.log(res);
})
.catch(err => {
console.log(err);
})
Serializer.py
class CategorySerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = Category
fields = ('id', 'category_name', 'category_owner_id', 'parentId')
views.py
class SettingView(viewsets.ModelViewSet) :
queryset = models.Category.objects.all()
serializer_class = CategorySerializer
def get(self, request) :
return JsonResponse(context)
def post(self, request, format=None):
return Response("ok")
当然,我很快就进入http://127.0.0.1:8000/profile/
如果列category_owner_id
中没有空值,但是它们都不为空。
我是django REST Framework的新手,所以您的所有帮助对我都非常好!
答案 0 :(得分:1)
使用 ModelSerializer 而不是 HyperlinkedModelSerializer 可能会有帮助
class CategorySerializer(serializers.ModelSerializer):
class Meta:
model = Category
fields = ('id', 'category_name', 'category_owner_id', 'parentId')
此外,如果您将深度设置为 1,则会导致相同的问题,您可以删除并尝试
# depth = 1