【发布时间】:2021-05-17 06:05:26
【问题描述】:
当我当时在配置文件模型中发送带有数据的发布请求时,会显示此错误。
错误
{ “用户名”: [ “类型不正确。预期的 pk 值,收到的 str。” ] }
我看到了这个answer,但不知道如何在序列化程序中实现 SlugRelatedField(OneToOneField)
models.py:
class CustomUser(AbstractUser):
# username_validator = UnicodeUsernameValidator()
username = models.CharField(
max_length=80,
unique=True,
)
email = models.EmailField(
unique=True,
blank=True,
)
.....
def __str__(self):
return '%s' %(self.username)
class Profile(models.Model):
user_name = models.OneToOneField(to = CustomUser,on_delete=models.CASCADE)
full_name = models.CharField(null=True,max_length=15, blank=True)
public_name = models.CharField(null=True,max_length=15, blank=True)
....
serializers.py:
class ProfileSerializer(serializers.ModelSerializer):
class Meta:
model = Profile
fields = ['user_name','full_name','public_name']
views.py:
class ProfileApiview(CreateAPIView):
queryset = Profile.objects.all()
serializer_class = ProfileSerializer
【问题讨论】:
标签: python django api django-rest-framework