所以这是我的文件 - Models.py
class Model1(models.Model):
user = models.ForeignKey(User)
other_fields = models.CharField(max_length=40)
序列化程序.py
class MySerializer(ModelSerializer):
class Meta:
model = Model1
fields = '__all__'
Here json request
{"user_id":1, "other_fields":"details"}
在views.py中
serializer = MySerializer(data=request.data)
serializer.data
**Throws keyerror "user"**
当我尝试将请求参数“user_id”更改为“user”时,它对我有用。但我无法更改请求 json。有没有办法在序列化程序中处理这个问题?
我可以将所有字段设置为“ _all_ ”,但由于字段数量众多,这不是一个好的解决方案。
我也试过 -
class MySerializer(ModelSerializer):
user = serializers.CharField(source='user_id')
class Meta:
model = Model1
fields = '__all__'
但这对我不起作用。