Python 当我处理数据时显示错误';str';对象没有属性';更新';

Python 当我处理数据时显示错误';str';对象没有属性';更新';,python,dictionary,Python,Dictionary,您不能更新项,它是一个字符串(更新是一个dict方法) 更改: @api_view(['GET', 'POST']) def compnay_list(request): """ List all Compnays, or create a new Compnay. """ if request.method == 'GET': compnay = Company.objects.all() serializer = Company

您不能更新
,它是一个字符串(
更新
是一个dict方法)

更改:

@api_view(['GET', 'POST'])
def compnay_list(request):
    """
    List all Compnays, or create a new Compnay.
    """
    if request.method == 'GET':
        compnay = Company.objects.all()
        serializer = CompanySerializer(compnay, many=True)
        return Response(serializer.data)

    elif request.method == 'POST':
        try:
            print(request.data.get('email'))
            user_id = User.objects.get(email=request.data.get('email')).id
            print(request.data)
            user_response = request.data.get('user_response')
            for item in user_response:
                item.update({"user": user_id})

            serializer = CompanySerializer(data=user_response)

            if serializer.is_valid():
                serializer.save()
                return Response(serializer.data, status=status.HTTP_201_CREATED)

            return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)

        except User.DoesNotExist:

            print("Error:email not available")
致:


您不能更新
,它是一个字符串(
更新
是一个dict方法)

更改:

@api_view(['GET', 'POST'])
def compnay_list(request):
    """
    List all Compnays, or create a new Compnay.
    """
    if request.method == 'GET':
        compnay = Company.objects.all()
        serializer = CompanySerializer(compnay, many=True)
        return Response(serializer.data)

    elif request.method == 'POST':
        try:
            print(request.data.get('email'))
            user_id = User.objects.get(email=request.data.get('email')).id
            print(request.data)
            user_response = request.data.get('user_response')
            for item in user_response:
                item.update({"user": user_id})

            serializer = CompanySerializer(data=user_response)

            if serializer.is_valid():
                serializer.save()
                return Response(serializer.data, status=status.HTTP_201_CREATED)

            return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)

        except User.DoesNotExist:

            print("Error:email not available")
致:


你能分享
用户响应的值或它的结构吗?{“email”:gpa@narola.email“,”用户响应“:{”名称“:”TCS“,”增值税编号“:”2507“,”徽标“:”xyz“,”说明“:”这是TCS信息技术“,”是总部“:”是真的“,”业务类型“:”IT“}”你能分享
用户响应的值或它的结构吗?{“email”:gpa@narola.email“,”用户响应“:{”名称“:”TCS“,”增值税编号“:”2507“,”徽标“:”xyz“,”说明“:”这是TCS信息技术“,”是总部“:”是真的“,”业务类型“:”IT“}”
user_response = request.data.get('user_response')
user_response.update({"user": user_id})