added support for user profiles

This commit is contained in:
Edward Tirado Jr 2025-07-08 00:39:58 -05:00
parent eeb74027eb
commit 1f314f1c20
8 changed files with 137 additions and 32 deletions

View file

@ -1,12 +1,35 @@
from django.contrib.auth import authenticate
from rest_framework import serializers
from django.contrib.auth.models import User, Group
from rest_framework import serializers
from movie_manager.serializers import MovieListSerializer
from users.models import UserProfile
class UserSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = User
fields = ["url", "username", "email", "password", "groups"]
fields = ["url", "username", "email", "groups"]
class UserProfileSerializer(serializers.HyperlinkedModelSerializer):
name = serializers.SerializerMethodField()
username = serializers.SerializerMethodField()
date_joined = serializers.SerializerMethodField()
lists = MovieListSerializer(many=True, read_only=True)
class Meta:
model = UserProfile
fields = ["name", "username", "date_joined", "lists"]
def get_name(self, obj):
return obj.name or ""
def get_username(self, obj):
return obj.user.username
def get_date_joined(self, obj):
return obj.user.date_joined
class GroupSerializer(serializers.HyperlinkedModelSerializer):