django rest create user profile and related data code example
Example 1: how to create a User and User profile in django rest framework
class UserSerializer(serializers.ModelSerializer):
profile = ProfileSerializer(required=True)
class Meta:
model = User
fields = ('url', 'email', 'profile', 'created',)
def create(self, validated_data):
user = User.objects.create(
url = validated_data['url'],
email = validated_data['email'],
)
profile_data = validated_data.pop('profile')
profile = Profile.objects.create(
user = user
first_name = profile_data['first_name'],
last_name = profile_data['last_name'],
)
return user
Example 2: how to create a User and User profile in django rest framework
class UserList(generics.ListCreateAPIView):
permission_classes = (IsAuthenticatedOrWriteOnly,)
serializer_class = UserSerializer
def post(self, request, format=None):
serializer = UserSerializer(data=request.data)
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)