Files
hossein-por-shop/backend/account/serializers.py
T
2025-02-11 21:40:50 +03:30

26 lines
1.0 KiB
Python

from .models import *
from rest_framework import serializers
from rest_framework_simplejwt.serializers import TokenObtainPairSerializer
class CustomTokenObtainPairSerializer(TokenObtainPairSerializer):
otp = serializers.CharField(required=False)
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
del self.fields['password']
class ProfileSerializer(serializers.ModelSerializer):
class Meta:
model = User
fields = ['first_name', 'last_name', 'email', 'profile_photo', 'phone', 'gender', 'birth_day']
read_only_fields = ("phone",)
class UserAddressSerializer(serializers.ModelSerializer):
class Meta:
model = UserAddressModel
fields = ['id', 'name', 'address', 'postal_code', 'phone', 'city', 'province', 'for_me']
read_only_fields = ('id',)
def validate(self, data):
user = self.context['request'].user
if not user.is_authenticated:
raise serializers.ValidationError("You must be logged in to perform this action.")
return data