26 lines
1.0 KiB
Python
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']
|
|
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 |