亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Django-REST-Framework:ForeignKey 實例未傳遞給

Django-REST-Framework:ForeignKey 實例未傳遞給

慕的地8271018 2021-06-09 16:13:57
我正在嘗試創建一個實例覆蓋create方法并ForeignKey在數據中傳遞該實例,但該字段未包含在validated_data傳遞給create方法中。我怎么能把它傳遞給create?我有這個模型。class UserProfile(models.Model):    name = models.CharField(verbose_name='Name', max_length=50)    email = models.EmailField(verbose_name='Email')    address = models.TextField(verbose_name='Address', null=True, blank=True)    user = models.OneToOneField(User, verbose_name='User', on_delete=models.CASCADE)這是我的序列化程序。class UserProfileSerializer(ModelSerializer):    class Meta:        model = UserProfile        fields = '__all__'        depth = 2    def create(self, validated_data):        print(validated_data)        return UserProfile.objects.create(**validated_data)這是我的看法。class UserRegisterView(APIView):    def post(self, request, format=None, *args, **kwargs):        name = request.data.get('name')        email = request.data.get('email')        password = request.data.get('password')        address = request.data.get('address')        if name and email and password:            user = User.objects.create_user(username=email, password=password, email=email)            request.data['user'] = user            serializer = UserProfileSerializer(data=request.data)            if serializer.is_valid():                user_profile = serializer.save()即使我將User對象傳遞給序列化程序,它也不包含在validated_data. 官方文檔建議為User模型創建另一個序列化程序并使用它,但是有沒有其他方法而不創建該序列化程序?
查看完整描述

1 回答

  • 1 回答
  • 0 關注
  • 172 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號