from rest_framework import serializers from django.contrib.auth import get_user_model from .models import User class UserSerializer(serializers.ModelSerializer): class Meta: model = User fields = [ 'id', 'username', 'email', 'role', 'avatar', 'bio', 'is_verified', 'created_at' ] read_only_fields = ['is_verified', 'created_at'] class UserRegistrationSerializer(serializers.ModelSerializer): password = serializers.CharField(write_only=True, min_length=6) class Meta: model = User fields = ['username', 'email', 'password', 'phone'] def create(self, validated_data): user = User.objects.create_user( username=validated_data['username'], email=validated_data.get('email', ''), password=validated_data['password'], phone=validated_data.get('phone', '') ) return user